kostenloser Webspace werbefrei: lima-city


Zuviele einträge in MySQL Datenbank

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    garlian

    Kostenloser Webspace von garlian

    garlian hat kostenlosen Webspace.

    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?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. s********n

    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
  4. Autor dieses Themas

    garlian

    Kostenloser Webspace von garlian

    garlian hat kostenlosen Webspace.

    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^^
  5. 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.
  6. Autor dieses Themas

    garlian

    Kostenloser Webspace von garlian

    garlian hat kostenlosen Webspace.

    Ich habe jetzt nen einfachen weg gefunden der funktioniert xD
    Aber darauf bin ich nur dank euch gekommen vielen Dank für die Hilfe^^
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!