Finde den Fehler nicht

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

  • Finde den Fehler nicht

    Hallo,
    ich habe ein Skript geschrieben, der einen Fehler hat.
    Leider bin ich noch nicht so fit, den Fehler zu finden.
    Fehlermeldung:
    Ungültige Abfrage: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
    Skript:
    $sql = " INSERT INTO gaestezaehler ";
    $sql .= " SET ";
    $sql .= " ip ='". $_SERVER['REMOTE_ADDR'] ."', ";
    $sql .= " datum ='". date("Y-m-d H:i:s") ."', ";

    Wer kann mir also helfen.
    VG CBO

  • #2
    Bitte für deinen nächsten Thread beachten: PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr - Ankündigungen im Forum : PHP Developer Forum !

    Das Komma in deinem Statement hat da zum Schluß nichts mehr zu suchen.
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

    Kommentar


    • #3
      Finde den Fehler nicht

      Hallo Quetschi,
      habe mir schon so etwas gedacht, bin aber mit VB vertrauter. Was mich iritierte war der Teil der Fehlermeldung "at line 1".
      Danke und Frohe Ostern
      CBO

      Kommentar


      • #4
        Dein Statement ist falsch. SET wird bei einem UPDATE genommen, bei INSERT sieht das Schema so aus:
        Code:
        INSERT INTO tabelle (feld1, feld2,...) VALUES(wert1, wert2,...);
        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Finde den Fehler nicht

          Hallo Kropff,
          jetzt funktioniert es. Es war das Komma am Ende.
          Werde aber auch dein Vorschlag ausprobieren. Der ähnelt auch dem Code wie ich ihn von VB kenne. Habe mir aber die Skripte gegoogelt und angepasst.
          Danke und Frohe Ostern
          CBO

          Kommentar


          • #6
            @Kropff

            Ein Insert-Statement kann auch mit 'SET col1=val1, col2=val2, ...' formuliert werden - da ist IMHO nichts falsches dran.
            Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
            Schön - etwas Geschichte kann ja nicht schaden.
            Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

            Kommentar


            • #7
              Zitat von Quetschi Beitrag anzeigen
              Ein Insert-Statement kann auch mit 'SET col1=val1, col2=val2, ...' formuliert werden - da ist IMHO nichts falsches dran.
              Seh ich genauso.

              Kommt sich glaube ich noch nicht mal mit dem SQL-Sandard in die Quere.

              Kommentar


              • #8
                Finde den Fehler nicht

                Frohe Ostern erst mal,

                habe jetzt mal versucht, die Variante von Kropff einzusetzen. Leider kommt eine Fehlermeldung. Meine Frage:Kann von Euch jemand den Fehler erkennen?
                Skript:
                $sql = "INSERT INTO gaestezaehler (ip, datum,dwert) VALUES(".$_SERVER['REMOTE_ADDR'].",". date("Y-m-d H:i:s").",". date("Ymd").";

                VG CBO

                Kommentar


                • #9
                  Zur Erinnerung:
                  Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                  Schön - etwas Geschichte kann ja nicht schaden.
                  Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                  Kommentar


                  • #10
                    WELCHE Fehlermeldung?

                    Ansonsten natürlich Quetschis Link.

                    Lösung: Strings quoten und escapen!!!

                    Kommentar

                    Lädt...
                    X