Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP und SQl Fehler?

Einklappen

Neue Werbung 2019

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

  • PHP und SQl Fehler?

    Hallo,

    ich versuche gerade einen sql-string in die Datenbank zu speichern (MySQL) ...

    Meiner Meinung nach ist alles OK, aber dennoch bekomme ich folgenden Fehler angezeigt:
    Fehler: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 '` (`00`, `01`, `02`, `03`, `04`, `05`, `06`, `07`, `08`, `09`, `10`, `11`, `12`,' at line 1
    Hier der Code:
    PHP-Code:
    $sql "INSERT INTO einsatzzahlen` (`00`, `01`, `02`, `03`, `04`, `05`, `06`, `07`, `08`, `09`, `10`, `11`, `12`, `13`, `14`, `15`, `16`, `17`, `18`, `19`, `20`, `21`, `22`, `23`, `datum`, `oe`) VALUES (\'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'1\', \'02.08.2010\', \'606011\')";
    safe_mysql_query($sql) or die("Fehler:" .mysql_error());
    $number mysql_insert_id();
    $num mysql_affected_rows();
    if (
    $num>0


  • #2
    Vor einsatzzahlen.

    Edit: Und einmal escapest du, einmal nicht etc. MySQL Grundlagen (vll. Php String Grundlagen) und gutes Syntaxhighlighting wäre was

    Kommentar


    • #3
      schau dir INSERT INTO an du hast deinen tabellen namen nicht in diese schräge hochkommas gesetzt
      apt-get install npm -> npm install -g bower -> bower install <package> YOLO https://www.paypal.me/BlackScorp | Mein Youtube PHP Kanal: https://www.youtube.com/c/VitalijMik

      Kommentar


      • #4
        Zitat von cetalian Beitrag anzeigen
        Vor einsatzzahlen.

        Edit: Und einmal escapest du, einmal nicht etc. MySQL Grundlagen (vll. Php String Grundlagen) und gutes Syntaxhighlighting wäre was
        Was meinst du mit "vor Einsatzzahlen"?

        Kommentar


        • #5
          "Der Fehler ist vor einsatzzahlen" oder "Schau mal vor einsatzzahlen". Such dir was aus und bedenke meine anderen Tipps

          Kommentar


          • #6
            Zitat von drzwockel Beitrag anzeigen
            Was meinst du mit "vor Einsatzzahlen"?
            schau deine tabelle einsatzzahlen an und schau was davor fehlt..
            apt-get install npm -> npm install -g bower -> bower install <package> YOLO https://www.paypal.me/BlackScorp | Mein Youtube PHP Kanal: https://www.youtube.com/c/VitalijMik

            Kommentar


            • #7
              - keine Feldliste angegeben
              - Escaping des Tabellennamen unvollständig
              - falsches Quoting für Daten (du verwendest ` anstelle von ' )
              Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

              Kommentar


              • #8
                Zitat von lstegelitz Beitrag anzeigen
                - keine Feldliste angegeben
                - Escaping des Tabellennamen unvollständig
                - falsches Quoting für Daten (du verwendest ` anstelle von ' )
                Dachte ich auch erst, aber er hat tatsächlich die Tabellenfelder 00, 01 etc. genannt. Tipp am Rande: In PHP Strings mit doppelten Anführungszeichen brauchst du einfache Anführungszeichen nicht escapen

                PHP-Code:
                "'das hier' funktioniert also"
                Der Fehler wurde bereits genannt

                Code:
                einsatzzahlen`
                @fschmengler - @fschmengler - @schmengler
                PHP Blog - Magento Entwicklung - CSS Ribbon Generator

                Kommentar


                • #9
                  Zitat von BlackScorp Beitrag anzeigen
                  schau deine tabelle einsatzzahlen an und schau was davor fehlt..
                  ... irgendwie bin ich blind ... ich habe mal meinen anderen Skripte angesehen ... die bauen sich, was jetzt den Bereich des Tabellennamens betrifft, gleich auf ...

                  ... was soll denn da fehlen bzw. falsch sein?

                  PHP-Code:
                  $sql "INSERT INTO einsatzzahlen (00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,datum,oe) values ('4','5','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','12.08.2010','606011')"

                  Kommentar


                  • #10
                    Das was du anscheinend gerade korrigiert hast, ohne es zu merken...

                    Kann es sein, dass du jetzt eine andere Fehlermeldung bekommst?
                    @fschmengler - @fschmengler - @schmengler
                    PHP Blog - Magento Entwicklung - CSS Ribbon Generator

                    Kommentar


                    • #11
                      Zitat von fab Beitrag anzeigen
                      Das was du anscheinend gerade korrigiert hast, ohne es zu merken...

                      Kann es sein, dass du jetzt eine andere Fehlermeldung bekommst?
                      Der Fehler sieht jetzt so aus:

                      Fehler: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 '00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ' at line 1

                      Kommentar


                      • #12
                        Bei solchen ungewöhlichen Feldnamen hattest du schon Recht, Backticks zu verwenden, MySQL erkennt 00, 01 etc sonst als Integer und kann an der Stelle nichts damit anfangen.

                        Code:
                        `01`, `02`,...
                        Ich wundere mich immer noch, dass so eine Benennung überhaupt möglich ist
                        @fschmengler - @fschmengler - @schmengler
                        PHP Blog - Magento Entwicklung - CSS Ribbon Generator

                        Kommentar


                        • #13
                          Zitat von fab Beitrag anzeigen
                          Dachte ich auch erst, aber er hat tatsächlich die Tabellenfelder 00, 01 etc. genannt.
                          Argl... jetzt wo du es sagst...
                          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                          Kommentar


                          • #14
                            Zitat von lstegelitz Beitrag anzeigen
                            Argl... jetzt wo du es sagst...

                            ... sollen die Stunden sein ...

                            Kommentar


                            • #15
                              „Durchnummerierte“ Spaltennamen sind meistens ein Anzeichen für mangelhaftes Datendesign.

                              Kommentar

                              Lädt...
                              X