Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> Scriptsprachen
Autor
Nachricht
Regenwurm
Coder
Coder

Anmeldedatum: 06.05.2008
Beiträge: 88

PHP & MySql
Verfasst am: 09.07.2008, 15:07

Hallo

Ich brauche ein kleines Registrierugnsformular mit 3 Feldern, welche dann in eine MySql Datenbank geschrieben werden.

Folgendes Problem:

- Kein Fehler nichts, doch die Daten werden nicht in die Datenbank geschrieben


Was brauch ich noch:

- Zuerst ein Check ob die Felder leer sind
- Zuerst ein Check ob ID oder Email schon vorhanden.


Da ich wirklich 0 Ahnung von der Materie hier habe, könntet ihr mir das evt. in den Source einfügen?


Hier HTML & PHP Source.


Reg Formular:




Beta Account!</title<br /><br />></head><br /><br /><body><br /><br /><h1>Request a beta test account!</h1><br /><br /><form action="../add.php" method="GET"><br /><br /><br /><br />ID:<br/><br /><input type="text" name="ID" /> <br /><br /><br />Password:<br/><br /><input type="text" name="PW" /> <br /><br /><br /><br />Email:<br/><br /><input type="text" name="Email" /> <br /><br /><br /><br /><br /><input type="submit" value="Submit" /><br /><br /><input type="hidden" name="action" value="add" /><br /><br /></form><br /><br /></body><br /><br /></html></td> </tr></table><span class="postbody"><br /><br /><br /><br />PHP Code:<br />[PHP]<HTML><br /><HEAD><br /><TITLE>Beta request!



// Die Parameter für die Datenbank-Verbindung festlegen
$servername = "localhost";
$benutzer = "benutzer";
$passwort = "password";

// Versuchen, die DB-Verbindung herzustellen
if ($verbindung = mysql_connect ($servername, $benutzer, $passwort)) {
echo "The connecton has been established!

";
} else {
echo "- Disconnected - " . mysql_error();
exit();
}

$datenbank = "trojanwars";
$tabellenname = "TabelleA";

// Die Datenbank auswählen
if (!mysql_select_db ($datenbank)) {
echo "Couldn't select the database: " . mysql_error();
exit();
} else {
echo "The database has been selected

";
}



$sql = "INSERT INTO `$tabellenname` (`ID`, `Password`, `Email`) VALUES ('$ID', '$PW', '$Email')";

mysql_db_query ($datenbank, $sql);

$Name=$_get['Name'];
echo "$ID
n";

$result = mysql_db_query ($datenbank, $sql);

// Die Verbindung zur Datenbank schliessen
mysql_close ($verbindung);
?>




[/PHP]

mfg
_________________

 
^^kev####
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 476
Wohnort: Haan


Verfasst am: 09.07.2008, 16:27

Also der PHP teil sieht schonmal schlecht gecodet aus xD
Ich hab jetzt einfach die Sachen eingefügt ohne was anderes zu ändern.
Zudem ist das ganze ziehmlich unsicher :p
Du musst dann auch bei deinem HTML Form die method auf POST ändern.

Code:
<HTML><br /><HEAD><br /><TITLE>Beta request!</TITLE><br /></HEAD><br /><BODY><br /><?php<br /><br />// Die Parameter für die Datenbank-Verbindung festlegen<br />$servername = "localhost";<br />$benutzer = "benutzer";<br />$passwort = "password";<br /><br />// Versuchen, die DB-Verbindung herzustellen<br />if ($verbindung = mysql_connect ($servername, $benutzer, $passwort)) {<br />echo "The connecton has been established!<P>";<br />} else {<br />echo "- Disconnected - " . mysql_error();<br />exit();<br />}<br /><br />$datenbank = "trojanwars";<br />$tabellenname = "TabelleA";<br /><br />// Die Datenbank auswählen<br />if (!mysql_select_db ($datenbank)) {<br />echo "Couldn't select the database: " . mysql_error();<br />exit();<br />} else {<br />echo "The database has been selected<P>";<br />}<br /><br />if (!$_POST["ID"] = "" && !$_POST["Email"] = "" && $_POST["PW"] = "") {<br />    if (mysql_num_rows(mysql_query("SELECT * FROM $tabellenname WHERE Email = '$_POST[email]'")) < 1) {<br />        if (mysql_num_rows(mysql_query("SELECT * FROM $tabellenname WHERE ID = '$_POST[ID]'")) < 1) {<br />    <br />                $sql = "INSERT INTO `$tabellenname` (`ID`, `Password`, `Email`) VALUES ('$_POST[ID]', '$_POST[PW]', '$_POST[email]')";<br />    <br />                mysql_db_query ($datenbank, $sql);<br />    <br />                $Name=$_get['Name'];<br />                echo "$ID<br />n";<br />    <br />                $result = mysql_db_query ($datenbank, $sql);<br />        } <br />        else {<br />            echo "ID gibts schon";<br />        }<br />    }<br />    else {<br />        echo "User gibts schon";<br />    }<br />}<br />else {<br />    echo "felder nicht ausgefüllt";<br />}<br /><br />// Die Verbindung zur Datenbank schliessen<br />mysql_close ($verbindung);<br />?><br /><br /><br /><br /></BODY><br /></HTML>

Hab jetzt schon lange nix mehr in PHP gemacht, sollte aber funzen Very Happy
_________________
 
Regenwurm
Coder
Coder

Anmeldedatum: 06.05.2008
Beiträge: 88


Verfasst am: 09.07.2008, 16:30

Hallo

Ich probiere es gleich aus Wink
Wegen dem schlecht gecodeten Teil etc.
Wie gesagt ich habe 0 Ahnung von PHP etc. und die Source ist auch nicht von mir :p

Wie meinst du ist das ganzer unsicher?
Was schlägst du mir vor?



EDIT:

Folgende Fehler:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/funnetwork/hosting/trojanwars/add.php on line 33

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/funnetwork/hosting/trojanwars/add.php on line 34
blabla


PHP CODE:

Code:
 if (mysql_num_rows(mysql_query("SELECT * FROM $tabellenname WHERE Email = '$_POST[email]'")) < 1) {<br />        if (mysql_num_rows(mysql_query("SELECT * FROM $tabellenname WHERE ID = '$_POST[ID]'")) < 1) {















EDIT 2:

[PHP]if ($_POST["Email"] != "" && $_POST["PW"] != "") {
if (mysql_num_rows(mysql_query("SELECT * FROM `".$tabellenname."` WHERE `Email` = '".$_POST[email]."' ")) < 1) {
if (mysql_num_rows(mysql_query("SELECT * FROM `".$tabellenname."` WHERE `ID` = '".$_POST[ID]."' ")) < 1) {

$sql = "INSERT INTO `$tabellenname` (`ID`, `Password`, `Email`) VALUES ('$_POST[ID]', '$_POST[PW]', '$_POST[email]')";

mysql_db_query ($datenbank, $sql);

$Name=$_get['Name'];
echo "$ID
n";

$result = mysql_db_query ($datenbank, $sql);
}
else {
echo "ID is already used";
}
}
else {
echo "Email is already used";
}
}
else {
echo "Please fill-out all the rows.";
}

// Die Verbindung zur Datenbank schliessen
mysql_close ($verbindung);
?>[/PHP]

So..
Keine Fehlermeldung etc mehr, nur bekomm ich immer den Fehler dass die Email bereits in Benutzung sei.
Und beim HTML File hab ich die METHOD noch auf POST geändert.


ich hoffe auf eine Antwort bis morgen =)
_________________


 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> Scriptsprachen

Tags: mysql datenbank, php, leer

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge [suche] Tuturials winsock & daten senden 868 09.06.2011, 12:19
Keine neuen Beiträge Post/Get Daten senden 608 02.06.2007, 15:01
Keine neuen Beiträge Daten an meine Homepage senden 840 26.05.2007, 20:11
Keine neuen Beiträge VB daten kompilieren? 724 23.04.2007, 13:34
Keine neuen Beiträge Daten in einen Ordner schreiben 806 25.03.2007, 13:12
 



[ Time: 0.2465s ][ Queries: 91 (0.0862s) ][ GZIP on - Debug on ]