Zuviele einträge in MySQL Datenbank
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anhauen
beitrag
codierung
daten
eintrag
erfolgreich daten
ergebnis
fehler
fertig skript
formular
fort
insert
login
lsung
registrierung
schleifen
skat
steuern
verschlsselung
vielen dank
-
Ich habe da ein kleines Problem immer wenn ich versuche per formular einen neuen Eintrag zu machen macht er mir zu viele einträge....
include('confic.php'); $dname = $_POST['dname']; $dpw = $_POST['dpw']; //Daten ausgeben $abfrage = "SELECT * FROM user"; $ergebnis = mysql_query($abfrage); while($row = mysql_fetch_array($ergebnis)) { if($row['name'] == "$dname") { echo "Name existiert schon!"; } else { echo "Registrierung erfolgreich!"; //Daten eintragen $eintrag = "INSERT INTO user (name, pw) VALUES ('$dname', '$dpw')"; $eintragen = mysql_query($eintrag); } }
Erst wird per formular name und pw übergeben dann soll geprüft werden ob der name schon existiert wenn nicht dann soll er einen neuen eintrag machen aber er macht zu viele wie verhindere ich das? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich find den Fehler auch nicht auf anhieb... Du musst das mit der while-Abfrage ändern denk ich mal...
Ich such mal nach der Lösung...
Was ich noch an deiner Stelle tun würde ist eine Verschlüsselung einbauen... (als md5 oder so (http://www.selfphp.de/funktionsreferenz/string_funktionen/md5.php))
Lg sebi
Ps: Du kannst das login auch über ein fertig Skript steuern...
ein sehr schönes ist Advanced Login (soll bald die neue version kommen) von MsxStudios
http://www.msxstudios.de
-------------------------------------------------------
Ich hab ne Lösung...:
Probier dies mal aus:
include('confic.php'); $dname = $_POST['dname']; $dpw = $_POST['dpw']; //Daten ausgeben $abfrage = "SELECT * FROM user WHERE name='$dname'"; $ergebnis = mysql_query($abfrage); if($ergebnis != ""){ echo 'Name existiert schon!'; } else { echo 'Registrierung erfolgreich!'; //Daten eintragen $eintrag = 'INSERT INTO user (name, pw) VALUES ('$dname', '$dpw')'; $eintragen = mysql_query($eintrag); }
lg sebi
Beitrag geändert: 23.10.2006 20:00:37 von skate-4fun -
Das ist ne nette Idee aber funzt nicht ganz, das Problem ist wohl bei der
if abfrage -.-
Es gibt immer nur aus das der Name existiert, was nicht stimmt -.-
Ich bin auch noch am gucken, die md5 codierung und andere wichtige sachen kommen später noch hinzu ich will erstmal ein funktionierendes Grundgerüst^^
-
Du hast das Eintragen der Daten in der while-Schleife mit drinne, das heißt, jedes mal wenn der Name nicht existiert macht er einen neuen Eintrag. Dann setzt er die Schleife fort und sieht "hey der Name ist immernoch nicht da ich mach nen Eintrag" usw.
Überprüf also in der Schleife nur ob der Name schon vorhanden ist und wenn es keinen Fehler gibt (der Eintrag nicht existiert), trägst du erst nach der Schelife die neuen Daten ein. -
Ich habe jetzt nen einfachen weg gefunden der funktioniert xD
Aber darauf bin ich nur dank euch gekommen vielen Dank für die Hilfe^^ -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage