Ich habe bisher alle Dateien erstellt und hochgeladen: wingi.bplaced.net/test/formular.php Nur komme ich mit der Datenbank noch nicht so zurecht.
Wo muss ich das Script “2. Einfügen von Testbenutzern in die Datenbank” aus der Anleitung
hochladen. Bzw. kann ich sonst irgendwie neue Benutzer anlegen.
Habe leider noch keine Erfahrungen mit der Datenbank und bin um jeden Tipp dankbar!
Ja des mit Registrierung is so ne Sache.
Habe selbst mit dem Tutorial angefangen mit Loginsystemen und hatte erfolg.
Zu 2.) Das skript hab ich einfach registrieren.php genannt und mit meinen Daten befüllt.
War recht einfach. (Einfach aufrufen -> Fertig)
Falls du aber ein Registrierungssystem brauchst dann soltest du dich etwas mit der Datei beschäftigen.
Es wird aber sehr schwierig dann auch noch mit email abfrage zu arbeiten.
// Sie können an dieser Stelle beliebig viele Benutzer anlegen.
// Achten Sie dabei nur auf die Fortführung der Nummer.
// Aufbau der Datenbankverbindung
$connectionid = mysql_connect (“localhost”, “root”, “”);
if (!mysql_select_db (“LoginSystem”, $connectionid))
{
die (“Keine Verbindung zur Datenbank”);
}
// Zuerst alle Datensätze löschen um keine Dopplungen zu bekommen.
mysql_query (“DELETE FROM benutzerdaten”);
// Daten eintragen
while (list ($key, $value) = each ($benutzer))
{
// SQL-Anweisung erstellen
[/code] Ab hier beginnt die eigentliche einfüge operation.[code]
$sql = “INSERT INTO “.
“benutzerdaten (Nickname, Kennwort, Nachname, Vorname) “.
“VALUES (’”.$value[“Nickname”].”’, '”.
md5 ($value[“Kennwort”]).”’, '”.
$value[“Nachname”]."’, ‘".
$value[“Vorname”]."’)";
mysql_query ($sql);
if (mysql_affected_rows ($connectionid) > 0)
{
echo “Benutzer erfolgreich angelegt. \n”;
}
else
{
echo “Fehler beim Anlegen der Benutzer. \n”;
}
}
?> [/code]
Da gibts ne Menge mysqlbefehle die auch beschrieben werden.
Einfach mal durchlesen.
Wenn ich Zeit hab Post ich mal n teil meiner Registrierung .
Das file habe ich auch mal hochgeladen und aufgerufen bekomme dann jedoch eine fehlermeldung:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user ‘root’@‘localhost’ (using password: NO) in /users/wingi/www/test/reg.php on line 17
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /users/wingi/www/test/reg.php on line 18
Keine Verbindung zur Datenbank
Natürlich bekommst du Fehlermeldungen, wenn du einfach irgendwas hochlädst, was dir hingeworfen wird, ohne drüber nachzudenken.
Bist du der root-Benutzer, der ohne Passwort auf die Datenbank zugreifen darf? Nein, wohl höchstvermutlich nicht. Also solltest du da vielleicht mal deine eigenen Zugangsdaten für deine Datenbank angeben, hm?
Dein MYSQL Benutzer sollte natürlich einer sein der auch von dir ist und bei dem du das Passwort weißt !
vermutlich falls du schon eine Datenbank hast dann ist dein MYSQL-name :
wingi oder so.
Dein Passwort weißt du ja selbst.
So das also oben in die registrieren.php schreiben.
Bei der Zeile :
$connectionid = mysql_connect ("localhost", "root", "");
if (!mysql_select_db ("LoginSystem", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}
musst du root durch deinen usernamen nach root des durch dein Passwort und Loginsystem durch dein Datenbank.
-> Wie username
aber wie bereits erwähnt habe ich damit noch keine Erfahrungen da ich noch nie etwas mit der Datenbank gemacht habe.
Über eine kurze Info wie ich es eintragen muss würde ich mich jedoch freuen.
<?php
// Definition der Benutzer
$benutzer[0]["Nickname"] ="admin";
$benutzer[0]["Kennwort"] = "admin";
$benutzer[0]["Nachname"] = "Mustermann";
$benutzer[0]["Vorname"] = "Max";
$benutzer[1]["Nickname"] = "test";
$benutzer[1]["Kennwort"] = "abc";
$benutzer[1]["Nachname"] = "Kunze";
$benutzer[1]["Vorname"] = "Martin";
// Sie können an dieser Stelle beliebig viele Benutzer anlegen.
// Achten Sie dabei nur auf die Fortführung der Nummer.
// Aufbau der Datenbankverbindung
$connectionid = mysql_connect ("localhost", "root", "");
if (!mysql_select_db ("LoginSystem", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}
// Zuerst alle Datensätze löschen um keine Dopplungen zu bekommen.
mysql_query ("DELETE FROM benutzerdaten");
// Daten eintragen
while (list ($key, $value) = each ($benutzer))
{
// SQL-Anweisung erstellen
$sql = "INSERT INTO ".
"benutzerdaten (Nickname, Kennwort, Nachname, Vorname) ".
"VALUES ('".$value["Nickname"]."', '".
md5 ($value["Kennwort"])."', '".
$value["Nachname"]."', '".
$value["Vorname"]."')";
mysql_query ($sql);
if (mysql_affected_rows ($connectionid) > 0)
{
echo "Benutzer erfolgreich angelegt. \n";
}
else
{
echo "Fehler beim Anlegen der Benutzer. \n";
}
}
?>
Sorry hab gerade geschrieben während die Antwort kam!!
hallo leute ich hoff das das irgendwer noch liest aber ich benutze das gleiche tutorial und schaffe es einfach nicht eine verbindung mit der mysql datenbank aufzubaun
es kommt immer: Keine Verbindung zur Datenbank(wenn ich als datenbank: benutzerdaten eingebe)
oder
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /users/wing/www/loginue.php on line 21
Warning: Cannot modify header information - headers already sent by (output started at /users/wing/www/loginue.php:21) in /users/wing/www/loginue.php on line 36(wenn ich wing als datenbank eingebe)
habe jetzt alles ein bisschen geändert kann mir wer sagen wo ich den fehler mache?
loginue.php ist mein dokument zur überprüfung für die Datenbanken
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /users/wing/www/loginue.php:6) in /users/wing/www/loginue.php on line 8
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /users/wing/www/loginue.php on line 26
Warning: Cannot modify header information - headers already sent by (output started at /users/wing/www/loginue.php:6) in /users/wing/www/loginue.php on line 41
[code]Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /users/wing/www/loginue.php on line 18
Warning: Cannot modify header information - headers already sent by (output started at /users/wing/www/loginue.php:18) in /users/wing/www/loginue.php on line 33[/code]
kannst du mir da auch weiter helfen?
php kenn ich mich noch ned so gut aus
Das bedeutet, dass du versuchst, eine Funktion wie mysql_fetch-irgendwas anzuwenden, obwohl kein gültiges Abfrageergebnis vorliegt - also ging dein mysql_query vorher wohl schief.
Kontrollausgabe des Query-Strings machen, und mysql_error nutzen, um die Datenbank nach einer genaueren Fehlermeldung zu fragen.
Solche Debugging-Tipps sollten übrigens auch in einem halbwegs brauchbaren Tutorial drinstehen - also schlage ich vor, du suchst dir mal eins, und arbeitest das durch.
War nicht grad noch ein Code da? Ich glaube, die Lösung ist, du kannst kein array mit mysql_num_rows auslesen, d.h. du darfst z.B. nur die ID selecten, und in einer weiteren abfrage dann die werte in sie session-variablen speichern…
*Ok ich hab nachgeschaut…was ich geschrieben hab ist eigentlich Schwachsinn…sry