SQL Variable Syntax

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

  • SQL Variable Syntax

    Wieso bekomme ich immer einen Fehler bei der Insert Into Zeile???

    HTML Datei mit dem Formular:
    PHP-Code:
    <FORM ACTION="bla.php" METHOD="get">

    <
    p>Nick<p>
    <
    INPUT TYPE="text" NAME="nick" SIZE=20 MAXLENGTH=50>
    <
    br>
    <
    p>Name<p>
    <
    INPUT TYPE="text" NAME="name" SIZE=20 MAXLENGTH=50>
    <
    br>
    <
    p>Vorname<br>
    <
    INPUT TYPE="text" NAME="vorname" SIZE=20 MAXLENGTH=50>
    <
    br>
    <
    p>Adresse<p>
    <
    INPUT TYPE="text" NAME="adresse" SIZE=20 MAXLENGTH=50>
    <
    br>
    <
    p>PLZ<p>
    <
    INPUT TYPE="text" NAME="plz" SIZE=20 MAXLENGTH=50>
    <
    br>
    <
    p>Ort<p>
    <
    INPUT TYPE="text" NAME="ort" SIZE=20 MAXLENGTH=50>
    <
    br>
    <
    p>Mail<p>
    <
    INPUT TYPE="text" NAME="mail" SIZE=20 MAXLENGTH=50>
    <
    br><br>

    <
    INPUT TYPE="submit" VALUE="Absenden">
    <
    INPUT TYPE="reset"  VALUE="Löschen">

    </
    FORM
    bla.php
    PHP-Code:
    <?php
    $con
    =mysql_connect('localhost''uname''password');
    mysql_select_db('db-name'$con);

       
    $nick $_GET['nick'];
       
    $name $_GET['name'];
       
    $vorname $_GET['vorname'];
       
    $adresse $_GET['adresse'];
       
    $plz $_GET['plz'];
       
    $ort $_GET['ort'];
       
    $mail $_GET['mail'];

       echo 
    "Nick: $nick<p>";
       echo 
    "Name: $name<p>";
       echo 
    "Vorame: $vorname<p>";
       echo 
    "Adresse: $adresse<p>";
       echo 
    "PLT: $plz<p>";
       echo 
    "Ort: $ort<p>";
       echo 
    "Mail: $mail<p>";
       
    INSERT INTO tabelle(nick,name,vorname,adresse,plz,ort,mailVALUES ('123','1234','1234','1234','1234','1234','1234');

    ?>
    Die Values werden noch durch die Variabeln ersetzt.

  • #2
    Hi,

    wie wärs wenn du auch mal den SQL Fehler posten würdest - aber ich glaube es sollte dir schon helfen, wenn du die Query einfach mal nimmst und in PHP-MyAdmin ausführst....

    Kommentar


    • #3
      Du solltest die Query vielleicht auch mit dem passenden Befehl absenden.

      Kommentar


      • #4
        Re: Insert Into Error

        Original geschrieben von snake23
        PHP-Code:

           
        echo "Nick: $nick<p>";
           echo 
        "Name: $name<p>";
           echo 
        "Vorame: $vorname<p>";
           echo 
        "Adresse: $adresse<p>";
           echo 
        "PLT: $plz<p>";
           echo 
        "Ort: $ort<p>";
           echo 
        "Mail: $mail<p>";
           
        INSERT INTO tabelle(nick,name,vorname,adresse,plz,ort,mailVALUES ('123','1234','1234','1234','1234','1234','1234');

        ?> 
        Autsch, du weißt schon, das das Tag für eine neue Zeil <br> heist und das ein <p>-Tag auch immer wieder zugemacht werden muss? (</p>)

        Ausserdem gehe ich davon aus, das deine Query da nur en Beispiel ist und du die in Wirklichkeit natürlich noch ausführst...

        Kommentar


        • #5
          Der Fehler ist:
          Parse error: parse error, unexpected T_STRING

          Das mit <p> funktioniert trotzdem
          Aber könnte man ändern...

          Ja wie denn Befehl ausführen?

          So:
          PHP-Code:
          mysql_query(INSERT INTO tabelle (nick,name,vorname,adresse,plz,ort,mailVALUES ('123','1234','1234','1234','1234','1234','1234')); 

          Kommentar


          • #6
            Edit: Im phpmyAdmin funktioniert der Befehl....

            Kommentar


            • #7
              Das ist nicht dein Ernst? Du bekommst einen Parse Error weil du erwartest das PHP natürlich sofort weiß was du willst, wenn du ne Query mitten in deinen Quellcode haust????

              Das finde ich dreißt...

              http://de2.php.net/manual/de/function.mysql-query.php

              resource mysql_query ( string Anfrage [, resource Verbindungs-Kennung] )
              ^^^Was denkst du weswegen da das Wort STRING steht....
              Zuletzt geändert von prego; 14.07.2005, 17:02.

              Kommentar


              • #8
                Ok, Fehler erkannt, es funktioniert jetzt...

                Kommentar


                • #9
                  Hab doch noch ein Problem, wenn ich die Values mit den Variablen ersetze, wie muss ich es genau schreiben (syntax)???
                  PHP-Code:
                  $sql 'INSERT INTO tabelle( nick, name, vorname, adresse, plz, ort, mail ) ' ' VALUES ( ??? )'
                  Für einen normalen Text muss ich ja: \\'text\\'
                  doch für eine Variable.................

                  Kommentar


                  • #10
                    SQL Variable Syntax

                    Wenn ich die Values mit den Variablen ersetze, wie muss ich es genau schreiben (syntax)???

                    PHP:
                    $sql = 'INSERT INTO tabelle( nick, name, vorname, adresse, plz, ort, mail ) ' . ' VALUES ( ??? )';


                    Für einen normalen Text muss ich ja: \'text\'
                    doch für eine Variable.................

                    Kommentar


                    • #11
                      http://dev.mysql.com/doc/mysql/en/insert.html
                      Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
                      var_dump(), print_r(), debug_backtrace und echo.
                      Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
                      Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
                      Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

                      Kommentar


                      • #12
                        PHP-Code:
                        $sql 'INSERT INTO tabelle VALUES ("' $var1 '", "' $var2 '", ...)'
                        du brauchst nicht jedesmal nach der tabelle die klammer mit allen werten machen...

                        BTW: Ich mach meine inserts überhaupt nur noch mit set, sprich:
                        PHP-Code:
                        $sql "INSERT INTO tabelle SET foo='bar', foo2='bar2', ..."
                        Gibt es daran etwas auszusetzen?
                        [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

                        Kommentar


                        • #13
                          PHP-Code:
                          $sql "INSERT INTO ".$table." (nick,name,vorname,adresse,plz,ort,mail) 
                          VALUES ('"
                          .$nick."','".$name."','".$vorname."','".$adresse."','".$plz."','".$ort."','".$mail."')"

                          Kommentar


                          • #14
                            Original geschrieben von snake23
                            Das mit <p> funktioniert trotzdem
                            Aber könnte man ändern...
                            Siehe unterste Zeile meiner Sig...
                            Zuletzt geändert von tomstig; 14.07.2005, 18:42.
                            [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

                            Kommentar


                            • #15
                              wieso machst du jetzt nen extra-thread auf? was soll das?
                              Die Zeit hat ihre Kinder längst gefressen

                              Kommentar

                              Lädt...
                              X