Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme mit dem Eintragen in die Datenbank

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme mit dem Eintragen in die Datenbank

    Ich bin gerade dabei ein kleines Script zur Erfassung einiger User zu schreiben. Jetzt habe ich noch einen Passwortvergleich erstellt. Allerdings funktioniert es nicht ganz.

    Hier der Teil des Scriptes

    PHP-Code:
    <?php
    //Überprüfung der Eingabefelder
        
    if($senden)    {
        
            if(
    $passwd!==$passwd2) { echo "Fehler in der Passworteingabe. Bitte gebe dein Passwort erneut ein.
    "
    ; }        
               if(empty(
    $nick) || empty($name) || empty($passwd) || empty($email))     {    echo "F&uuml;lle bitte alle Felder aus.
    "
    ; }
            
            
    $snick=$_POST['nick']; $semail=$_POST['email']; $sname=$_POST['name']; $sicq=$_POST['icq']; $smsn=$_POST['msn'];
            
    $syim=$_POST['yim']; $saim=$_POST['aim']; $shp=$_POST['hp']; $sherkunft=$_POST['herkunft'];
            
          } else {
         
        
    // Eintrag in DB speichern 
          
    if ($action=="save") { 
            
    mysql_query("INSERT INTO $table (nick,passwd,email,name,icq,msn,yim,aim,homepage,herkunft) VALUES 
    ('
    $nick','$passwd','$email','$name','$icq','$msn','$yim','$aim','$hp','$herkunft')");
            
            
    $snick=$semail=$sname=$sicq=$smsn=$syim=$saim=$shp=$sherkunft="";  }     //Hier werden die s-Variablen geleert        
            
                
    if (mysql_query == TRUE) { echo "Daten erfolgreich gespeichert"; } else { echo "Fehler in der Übertragung"; }
                
            }
    ?>
    Die s-Variablen speichern die Werte temporär, damit man nicht alles nochmal eintragen muss, wenn man ein bestimmtes Feld nicht ausgefüllt hat. Nach der SQL Abfrage werden diese Variablen wieder geleert und es kommt bei einer erfolgreichen Abfrage die Meldung, dass alles erfolgreich eingetragen wurde. Wenn ich das Script nun aufrufe, steht oben direkt, dass die Daten erfolgreich eingetragen wurde. Wenn ich Daten eingebe und abschicke, wird jedoch nichts eingetragen. Bevor ich die erste If Abfrage drin hatte, funktionierte alles einwandfrei. Hat jemand eine Idee wo der Fehler liegen könnte?

    Edit: Der Teil wo den s-Variablen die Werte zugewiesen werden, war vorher in der dritten if-Bedingung drin, also dort wo überprüft wird, ob die Felder leer sind oder nicht. Direkt hinter echo.
    mfg
    picco


  • #2
    PHP-Code:
    <?php
     
    if (mysql_query == TRUE) { echo "Daten erfolgreich gespeichert"; } else { echo "Fehler in der Übertragung"; } 
    ?>
    Was ist das denn?
    Das kannst du so nicht machen.
    PHP-Code:
    <?php
    $res 
    mysql_query("...") or die(mysql_error());
    if(
    $res)
            echo 
    'Daten erfolgreich gespeichert!';
    ?>
    Arbeite mit mysql_error() hinter deinem Query, und setz gaaanz am ANfang des Scriptes ein error_reporting(E_ALL) ein.

    Kommentar

    Lädt...
    X