JaschaAK: INSERT INTO funktioniert nicht

Aloha,

[--STORY--]
Ich hab vor einiger Zeit angefangen DVD's zu sammeln und wollte mir jetzt eine Seite basteln, wo ich reinschreiben kann welche Filme ich noch gerne hätte (meistens fallen sie mir bei Freunden oder so ein).

Ich habe mir bereits eine Tabelle über PHPMyAdmin erstellt
und auch eine Seite für die Ausgabe, welche Reibungslos funktioniert.

[--PROBLEM--}
Nun baue ich gerade die Seite damit ich die Informationen eingeben kann, lasse das Formular allerdings erstmal weg.

Ich habe über google mehrere Tutorials gefunden, die meisten mit dem selben Code und mich daher für diesen entschieden.

Nur funktioniert er nicht.
Ergebnis ist eine leere Seite und kein Eintrag in der Tabelle

  
<?php  
  
  
$con = mysql_connect("xx","xx","xx");  
if (!$con)  
  {  
  die('Could not connect: ' . mysql_error());  
  }  
  
mysql_select_db("xx", $con);  
  
mysql_query("INSERT INTO `alliwant` ( `ID` , `Titel` , `Amazon` , `Trailer` , `Imdb` , `Datum` )  
VALUES (  
'', 'Blues Brothers', '', '', '', NOW( )  
");  
  
mysql_close($con);  
  
  
?>  

Datenbankname usw. habe ich natürlich bei mir richtig hingeschrieben.

Kennt ihr die Lösung?
MfG,

Jascha

  1. hi,

    Kennt ihr die Lösung?

    Selbstverständlich. Frage nach Deinem Statement den ErrorLevel ab und poste den hier.

    Hotti

    1. hi,

      Kennt ihr die Lösung?

      Selbstverständlich. Frage nach Deinem Statement den ErrorLevel ab und poste den hier.

      Hotti

      Aloha,

      in einem Tutorial stand, das man so die Fehler abfragt.
      Meinstest du Error Reporting? (Ergebnis ist weiterhin eine leere Seite).

        
      <?php  
        
      error_reporting(E_ALL);  
      ini_set('display_errors', 1);  
        
        
      $con = mysql_connect("xx","xx","xx");  
      if (!$con)  
        {  
        die('Could not connect: ' . mysql_error());  
        }  
        
      mysql_select_db("xx", $con);  
        
      mysql_query("INSERT INTO `alliwant` ( `ID` , `Titel` , `Amazon` , `Trailer` , `Imdb` , `Datum` )  
      VALUES (  
      '', 'Blues Brothers', '', '', '', NOW( )  
      ");  
        
        
      mysql_close($con);  
        
        
      ?>
      

      Was den Syntax angeht.
      Eclipse zeigt mir keine Fehler an.
      Was genau sollte ich ändern?

      Gruß,
      Jascha

      1. hi,

        Was genau sollte ich ändern?

        Deine Vorgehensweise.

        1. Teste Dein Insert-Statement am mySQL-Prompt, funktioniert das?
        2. baue mit PHP eine Verbindung zu Deiner DB auf, hast Du die?
        3. schreibe Dein Statement in den PHP-Code
        4. führe PHP-Code aus
        5. prüfe das Ergebnis, frage die PHP-Methoden, ob Dein Statement einen Fehler erzeugt hat (siehe tk).

        Dann klappts auch mit dem Insert,
        Hotti

        1. hi,

          Was genau sollte ich ändern?

          Deine Vorgehensweise.

          1. Teste Dein Insert-Statement am mySQL-Prompt, funktioniert das?
          2. baue mit PHP eine Verbindung zu Deiner DB auf, hast Du die?
          3. schreibe Dein Statement in den PHP-Code
          4. führe PHP-Code aus
          5. prüfe das Ergebnis, frage die PHP-Methoden, ob Dein Statement einen Fehler erzeugt hat (siehe tk).

          Dann klappts auch mit dem Insert,
          Hotti

          huhu,

          sorry ich bin etwas neuer in der Programmier-Welt.
          Insert Statement? mySQL Prompt? Nie gehört :/

          Aber ich weiss das die Verbindung zur DB steht.
          Und wegen dem Fehlerprüfen schau ich gleich nochmal was man
          da machen kann...

          1. hi,

            [..] mySQL Prompt? Nie gehört :/

            den Prompt kriegst Du, wenn Du die Verbindung zu MySQL auf der Kommandozeile herstellst.

            Andere Möglichkeit: MySQL Control Center.

            Da hst du dann neben PHP die Möglichkeit, Deine Statements zu testen.

            Statement = "SELECT feldname FROM tabellename"
                      = "INSERT ..."
            usw.

            Hotti

            1. hi,

              [..] mySQL Prompt? Nie gehört :/

              den Prompt kriegst Du, wenn Du die Verbindung zu MySQL auf der Kommandozeile herstellst.

              Andere Möglichkeit: MySQL Control Center.

              Da hst du dann neben PHP die Möglichkeit, Deine Statements zu testen.

              Statement = "SELECT feldname FROM tabellename"
                        = "INSERT ..."
              usw.

              Hotti

              Jo, das Statement ist richtig und funktioniert wenn ich es bei
              PHPMyAdmin eingebe. :/

              1. Hi,

                bitte sinnvoll zitieren, nicht einfach alles!

                Jo, das Statement ist richtig und funktioniert wenn ich es bei
                PHPMyAdmin eingebe. :/

                *Welches* Statement? Das dynamisch von PHP zusammengesetzte?

                Und hast du dir jetzt endlich mal von der Datenbank den Fehler melden lassen?

                MfG ChrisB

                --
                “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
                1. Aloha again,

                  nun habe ich den Fehler gefunden.
                  Ich habe einfach eine Klammer vergessen und zwar
                  hinter dem NOW().

                  Danke für eure Hilfe. Habe einiges gelernt.

                  Hier der funktionierende Code:

                    
                    
                    
                  <?php  
                    
                  error_reporting(E_ALL);  
                  ini_set('display_errors', 1);  
                    
                    
                  $con = mysql_connect("host","name","pw");  
                  if (!$con)  
                    {  
                    die('Could not connect: ' . mysql_error());  
                    }  
                    
                  mysql_select_db("datenbankname", $con);  
                    
                  mysql_query("INSERT INTO `alliwant` ( `ID` , `Titel` , `Amazon` , `Trailer` , `Imdb` , `Datum` )  
                  VALUES (  
                  '', 'Herr der Ringe - Die Gefaehrten', '', '', '', NOW( ))  
                  ");  
                    
                  mysql_close($con);  
                    
                    
                  ?>  
                    
                    
                    
                  
                  
  2. Hallo Jascha,

    mysql_query("INSERT INTO alliwant ( ID , Titel , Amazon , Trailer , Imdb , Datum )
    VALUES (
    '', 'Blues Brothers', '', '', '', NOW( )
    ");

    Mit einer Fehlerbehandlung hättest du gesehen, dass MySQL mit dem Syntax des Querys nicht einverstanden ist ...

    Gruß,
    Tobias