Formulardaten an Datenbank!

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

  • Formulardaten an Datenbank!

    Hi,

    hab schon im Forum gesucht, aber hab nicht wirklich was gefunden was mir hilft.

    Nun zum Prob. Bekomme folgende Fehlermeldung:

    Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in C:\Programme\xampp\htdocs\fussball\eingabe-spieler.php on line 20

    Und hier nun das script dazu:

    PHP-Code:

        
    } else {
    $sql "INSERT INTO spielerdaten (vorname, nachname, geb-datum, spitzname, wohnort) 
    VALUES ('
    $_POST['vorname']', '$_POST['nachname']', '$_POST['geb-datum']',
     '
    $_POST['spitzname']', '$_POST['wohnort']')";
    $result mysql_query($sql);
            if (
    $result) {
                echo 
    "<p>Dateineingabe erfolgreich!</p>;
            } else {
                echo "
    <p>Dateneingabe <b>nicht</berfolgreich!</p>;

    Zeile 20 ist die welche mit $sql = beginnt

    habe es auch schon ohne ";" versucht, funzt auch nicht.

    Weiss nicht mehr weiter. Ich hoffe, Ihr könnt mir helfen!!!

    Gruss Darson
    MfG Darson

  • #2
    joa dann schau mal wieviele ' Du da drin hast-....
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Re: Formulardaten an Datenbank!

      das syntax highlight verrät dir hier schon den fehler aber ansonsten

      für wenig aufwand vieleicht mal schauen ob ... nicht irgendwo " vergessen wurde .

      und wenn dann gib mal spassehalber

      PHP-Code:
      $sql "INSERT INTO spielerdaten (vorname, nachname, geb-datum, spitzname, wohnort) 
      VALUES ('
      $_POST['vorname']', '$_POST['nachname']', '$_POST['geb-datum']',
       '
      $_POST['spitzname']', '$_POST['wohnort']')";

      echo 
      $sql;
      $result mysql_query($sql); 
      das hier ein.

      ansonsten schau dir nochmal die beiden echos dadrunter an.
      Bitte Beachten.
      Foren-Regeln
      Danke

      Kommentar


      • #4
        OffTopic:
        Was hat 'n parse error eigentlich im DB Forum zu suchen?

        Und btw.: http://www.php-resource.de/forum/sho...threadid=58111

        Code:
        echo "<p>Dateneingabe <b>nicht</b> erfolgreich!</p>;
        Und da hast du gleich noch ein " vergessen.

        Kommentar


        • #5
          @DarkRoot

          wenn du ihn schon mit der nase drauf stösst dann wenigstens gleich ganz

          denn er hat das teil gleich 2mal vergessen

          PHP-Code:
             if ($result) {
                      echo 
          "<p>Dateineingabe erfolgreich!</p>;
                  } else {
                      echo "
          <p>Dateneingabe <b>nicht</berfolgreich!</p>; 
          richtig währe das hier
          PHP-Code:
          if(mist) {
          echo 
          "schrott";
          } else {
          echo 
          "muell"
          achja was mir jetzt gerade auch noch aufgefallen ist ...

          PHP-Code:
          else {
          $sql "INSERT INTO spielerdaten (vorname, nachname, geb-datum, spitzname, wohnort) 
          VALUES ('
          $_POST['vorname']', '$_POST['nachname']', '$_POST['geb-datum']',
           '
          $_POST['spitzname']', '$_POST['wohnort']')";
          $result mysql_query($sql);
                  if (
          $result) {
                      echo 
          "<p>Dateineingabe erfolgreich!</p>;
                  } else {
                      echo "
          <p>Dateneingabe <b>nicht</berfolgreich!</p>;

          wenn ich mir das so ansehe dann sieht das vereinfacht so aus

          PHP-Code:
          else 
             {
             
          #var 
             #db abfrage
             
          if(#irgendwas)
                
          {
                 
          #ausgabe
                
          }
             else
                {
                 
          #ausgabe
             

          irgendwie fehlt da noch was doch was genau ... das mit [COLOR=red]}[/COLOR] zu tun hat darf er doch noch selber finden oder?
          Bitte Beachten.
          Foren-Regeln
          Danke

          Kommentar


          • #6
            @Wyveres:

            natürlich fehlt da noch etwas an Script. Laut Regeln soll man ja nur den Teil bringen, wo man fragen zu hat!

            Aber macht man es nicht, bekommt man Anschiss, macht man es und lässt anderes weg bekommt man ebenfalls 'nen Anschiss!!!!

            Einigt Euch mal!


            MfG Darson
            MfG Darson

            Kommentar


            • #7
              OffTopic:
              Jeder, der schon großartige Script-Pläne verfolgt, obwohl er mit den Grundlagen der Syntax noch nicht mal soweit umgehen kann, dass er die Ursache eines simplen parse errors selber finden kann, hat m.E. einen "Anschiss" mehr als verdient ...
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8



                Ach wahsaga, Du motzt doch immer und überall rum! Da ist es schon fast egal, welchen Fehler man macht! Aber wat soll's, wollt doch nur'n bisschen Hilfe, da man als Anfänger immer wieder Fehler macht.



                Naja, Shit happens

                MfG Darson
                MfG Darson

                Kommentar


                • #9
                  Original geschrieben von wahsaga
                  OffTopic:
                  Jeder, der schon großartige Script-Pläne verfolgt, obwohl er mit den Grundlagen der Syntax noch nicht mal soweit umgehen kann, dass er die Ursache eines simplen parse errors selber finden kann, hat m.E. einen "Anschiss" mehr als verdient ...
                  OffTopic:

                  *vor lachem vom stuhl fällt*



                  Darson, hat es denn wenigstens geholfen?

                  EDIT:

                  jetzt mach ich aus geholfen schon holfen... mist freitagsfluch ... in 2 stunden erst freierabend

                  Zuletzt geändert von Wyveres; 11.05.2007, 16:10.
                  Bitte Beachten.
                  Foren-Regeln
                  Danke

                  Kommentar


                  • #10
                    Nein, leider nicht. bin noch am suchen. Hat mir wieder eine andere Fehlermeldung ausgegeben, in der selben Zeile!

                    unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING

                    Suche gerade die Fehler!!!!!!!

                    ..............
                    MfG Darson

                    Kommentar


                    • #11
                      Jetzt haut es hin, aber jetzt findet er die angeforderte URL nicht nachdem ich auf den Button Eintragen geklickt habe. Am besten ist, ich poste mal das Script!

                      Zum eintragen in die Datenbank:

                      PHP-Code:

                      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
                      <html>
                      <head>
                      <title>Neue Spielerdaten eingeben</title>
                      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
                      </head>

                      <body>
                      <table cellspacing="5">
                      <tr>
                        <td>
                        
                      <?php
                      include("connect.php");
                      if (isset (
                      $_POST['submit'])) {
                          if (empty(
                      $_POST['nachname'])) {
                              echo 
                      "<p>Bitte <b>Name</b> angeben!</p>";
                          } else if (
                      strlen($_POST['vorname']) <3) {
                              echo 
                      "<p>Bitte mindestens <b>3</b> Zeichen eingeben!</p>";
                          } else {
                      $sql "INSERT INTO spielerdaten (vorname, nachname, gebdatum, spitzname, wohnort)
                       VALUES ('
                      $_POST[vorname]', '$_POST[nachname]', '$_POST[gebdatum]',
                       '
                      $_POST[spitzname]', '$_POST[wohnort]')";  
                      $result mysql_query($sql);
                              if (
                      $result) {
                                  echo 
                      "<p>Dateineingabe erfolgreich!</p>";
                              } else {
                                  echo 
                      "<p>Dateneingabe <b>nicht</b> erfolgreich!</p>";
                      }
                            }
                            echo 
                      "[ <a href='$_SERVER[PHP_SELF]'>Neuen Datensatz eintragen</a>]";
                      }
                      echo <<<EINGABEFORMULAR
                      <form action="{$_SERVER['PHP_SELF']} method="post">
                      <table width="40%" border="1" cellpadding="0" cellspacing="0">
                        <tr>
                          <td width="40%">Vorname:</td>
                          <td width="60%"><input type="text" name="vorname"></td>
                        </tr>
                        <tr>
                          <td width="40%">Nachname:</td>
                          <td width="60%"><input type="text" name="nachname"></td>
                        </tr>
                        <tr>
                          <td width="40%">Geburtsdatum:</td>
                          <td width="60%"><input type="text" name="gebdatum"></td>
                        </tr>
                        <tr>
                          <td width="40%">Spitzname:</td>
                          <td width="60%"><input type="text" name="spitzname"></td>
                        </tr>
                        <tr>
                          <td width="40%">Wohnort:</td>
                          <td width="60%"><input type="text" name="wohnort"></td>
                        </tr>
                        </table>
                        <br>
                        <table>
                        <td>
                        <input type="submit" value="Eintragen" name="submit">
                        </td>
                        </tr>
                      </table>
                      </form>
                      EINGABEFORMULAR;
                      mysql_close($connect);
                      ?>
                      </td>
                      </tr>
                      </table>


                      </body>
                      </html>
                      Und die connect.php

                      PHP-Code:

                      <?php

                      $dbhost 
                      "localhost";
                      $dbUser "root";
                      $dbPass "";
                      $dbname "fussball";

                      $connect = @mysql_connect($dbhost$dbUser$dbPass) or die("Keine Verbindung zum Datenbankserver!");
                      $selectDB = @mysql_select_db($dbname) or die("Konnte die Datenbank <b>$dbname</b> nicht auswählen!");

                      ?>
                      Hoffe, mir kann jemand sagen, wo der Fehler daran ist. Aber bitte nicht damit kommen, das das ganze Script ein einziger Fehler ist!!!


                      MfG Darson
                      MfG Darson

                      Kommentar


                      • #12
                        kurze anwort. schau dir das syntax highlight hier an der fehler is so offensichtlich das es dir selber auffallen müsste.
                        Bitte Beachten.
                        Foren-Regeln
                        Danke

                        Kommentar


                        • #13
                          action="{$_SERVER['PHP_SELF']} method="post"


                          die action ist also "{$_SERVER['PHP_SELF']} method="




                          kleiner Tipp:

                          1.mach mal vernünftige einrückungen, sodass man sehen kann wofür welche klammern sind.

                          2. else if wird zusammengeschrieben
                          signed oder unsigned... das ist hier die Frage

                          Kommentar


                          • #14
                            Original geschrieben von case

                            2. else if wird zusammengeschrieben
                            Ähm nein nicht unbedingt

                            PHP-Code:
                            $a=2;
                            if(
                            $a==1)
                                {echo 
                            $a;}
                            else if(
                            $a==2)
                                {echo 
                            $a;}
                            else
                                {echo 
                            $a;} 
                            eben getestet funzt ohne probs.

                            EDIT:

                            ich werd dir mal zeigen wie es richtig aussehen sollte
                            is ja freitag abend



                            PHP-Code:
                            ?>
                            <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
                            <table width="40%" border="1" cellpadding="0" cellspacing="0">
                              <tr>
                                <td width="40%">Vorname:</td>
                                <td width="60%"><input type="text" name="vorname"></td>
                              </tr>
                              <tr>
                                <td width="40%">Nachname:</td>
                                <td width="60%"><input type="text" name="nachname"></td>
                              </tr>
                              <tr>
                                <td width="40%">Geburtsdatum:</td>
                                <td width="60%"><input type="text" name="gebdatum"></td>
                              </tr>
                              <tr>
                                <td width="40%">Spitzname:</td>
                                <td width="60%"><input type="text" name="spitzname"></td>
                              </tr>
                              <tr>
                                <td width="40%">Wohnort:</td>
                                <td width="60%"><input type="text" name="wohnort"></td>
                              </tr>
                              </table>
                              <br>
                              <table>
                              <td>
                              <input type="submit" value="Eintragen" name="submit">
                              </td>
                              </tr>
                            </table>
                            </form>
                            <?php
                            mysql_close
                            ($connect);
                            ?>
                            </td>
                            Zuletzt geändert von Wyveres; 11.05.2007, 17:34.
                            Bitte Beachten.
                            Foren-Regeln
                            Danke

                            Kommentar


                            • #15
                              also das mit dem

                              echo <<<EINGABEFORMULAR

                              kann er schon machen daran liegt es nicht, es waren schätzungsweise nur die falschen anführungsstriche.

                              in einem
                              echo <<<EINGABEFORMULAR
                              EINGABEFORMULAR;
                              Block kann man auch Variablen verwenden.



                              Übrigens:
                              PHP-Code:
                              $a=2;
                              if(
                              $a==1)
                                  {echo 
                              $a;}
                              else if(
                              $a==2)
                                  {echo 
                              $a;}
                              else
                                  {echo 
                              $a;} 
                              ist a unschön aufgrund von fehlenden klammern, es sollte wenn dann:
                              PHP-Code:
                              $a=2;
                              if(
                              $a==1)
                                  {echo 
                              $a;}
                              else{ 
                                  if(
                              $a==2)
                                      {echo 
                              $a;}
                                  else
                                      {echo 
                              $a;}

                              heißen (denn so wird es dann ausgeführt

                              und ausserdem bietet php ein elseif an, was performanter ist, also sollte man es nutzen
                              signed oder unsigned... das ist hier die Frage

                              Kommentar

                              Lädt...
                              X