Ankündigung

Einklappen
Keine Ankündigung bisher.

Fehler - Eintragung in die MySQL Datenbank

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Fehler - Eintragung in die MySQL Datenbank

    Hey,

    ich fange derzeit mit PHP & MYSQL an und hab derzeit etwas geschrieben was leider 1(2) Error Meldungen erzeugt. Vielleicht kann mir das ja jemand fixxen bzw. einen funktionierenden Code draus machen. Wäre sehr dankbar!

    PHP-Code:
    <html>
    <head>
    <?php
       
    if (isset($_POST["gesendet"]))
       {
          
    $con mysqli_connect("""root");
          
    mysqli_select_db($con"firma");

          
    $sql "insert personen"
            
    "name, vorname, personalnummer,"
            
    "gehalt, geburtstag) values "
            
    "('" $_POST ["na"] . "',"
            
    "'" $_POST ["vn"] . "', "
            
    $_POST ["pn"] . ", "
            
    $_POST ["ge"] . ", "
            
    "'" $_POST["gt] . "')";

           mysqli_query($con, $sql);
      
           $num = mysqli_affected_rows($con);
           if ($num>0)
           {
            
           echo "<p><font color='
    #00aa00'>";
           
    echo "Es wurde ein Datensatz hinzugefügt";
           echo 
    "</font></p>";

           }
           else
           {
          
           echo 
    "<p><font color='#ff0000'>";
           echo 
    "Es ist ein Fehler aufgetreten, ";
           echo 
    "es wurde kein Datensatz hinzugefügt";
           echo 
    "</font></p>";
          
         }

         
    mysqli_close($con);

       }

    <?
    <
    head>
    <
    body>
    <
    p>Geben sie bitte einen vollständigen Datensatz ein<br />
    und senden Sie das Formular ab:</p>
    <
    form action "db_erzeugen.php" method "post">
       <
    p><input name "na" /> Name</p>
       <
    p><input name "vn" /> Vorname </p>
       <
    p><input name "pn" />
          
    Personalnummer (eine ganze Zahl)</p>
       <
    pinput name "ge" /> Gehalt 
          
    (Nachkommastellen mit Punkt) </p>
       <
    pinput name "gr" /> Geburtsdatum
          
    (in der Form JJJJ-MM-TT)</p>
       <
    p><input type ="submit" name "gesendet" />
       <
    input type "reset" /></p>

    </
    form>

    <
    pAlle Datensätze <a href="db_tabelle.php">anzeigen</a></p>

    </
    body>
    </
    html>
    Nun tritt folgende Fehlermeldung auf:

    PHP-Code:
    Parse errorsyntax errorunexpected '')"; ' (T_CONSTANT_ENCAPSED_STRING), expecting ']' in C:\xampp\htdocs\db_erzeugen.php on line 24 
    Wenn ich Zeile 24 ganz raus nehme folgt der gleiche Error auf Zeile
    32.

    Vielleicht kann jemand helfen..

  • #2
    Willkommen im Forum

    schau mal hier :P

    [...]
    PHP-Code:
            "'" $_POST["gt] . "')"; 
    [...]

    EDIT: Noch ein kleiner Fehler in Zeile 43

    [...]
    PHP-Code:
    <?
    [...]

    Kommentar


    • #3
      Das Feld erscheint jetzt, aber sobald ich einen Test User eintrage erscheinen weitere Fehlermeldungen:

      Notice: Undefined index: na in C:\xampp\htdocs\db_erzeugen.php on line 12

      Notice: Undefined index: vn in C:\xampp\htdocs\db_erzeugen.php on line 13

      Notice: Undefined index: pn in C:\xampp\htdocs\db_erzeugen.php on line 14

      Notice: Undefined index: ge in C:\xampp\htdocs\db_erzeugen.php on line 15

      Notice: Undefined index: gt in C:\xampp\htdocs\db_erzeugen.php on line 16

      Die Meldung besagt das na,vn,pn,ge & gt undefiniert sind, allerdings sind die
      doch definiert? Vielleicht kann mir ja noch jemand helfen

      Kommentar


      • #4
        PHP-Code:
        var_dump($_POST); 
        kein _post so ins sql(-injection) und:
        php-de.github.io

        Kommentar


        • #5
          Zitat von moma Beitrag anzeigen
          PHP-Code:
          var_dump($_POST); 
          kein _post so ins sql(-injection) und:
          php-de.github.io
          Ich verstehe nur Bahnhof, kannst du mir eventuell einen funktionieren Code posten?

          edit wenn ich $_POST mit var_dump($_POST) ersetze folgt folgende Error Meldung:

          array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" }

          Kommentar


          • #6
            1.) habe ich code gepostet,
            2.) ne url.

            Kommentar


            • #7
              ja du hast einen code gepostet, der bei mir nicht so geht wie gewünscht. vielleicht habe ich ihn einfach nur falsch eingesetzt wäre toll wenn du mir den ganzen code gleich einbaust sprich mir meinen code mit deinem ersetzen code gibst

              also:

              PHP-Code:
              <html> 
              <head> 
              <?php 
                 
              if (isset($_POST["gesendet"])) 
                 { 
                    
              $con mysqli_connect("""root"); 
                    
              mysqli_select_db($con"firma"); 

                    
              $sql "insert personen" 
                      
              "name, vorname, personalnummer," 
                      
              "gehalt, geburtstag) values " 
                      
              "('" $_POST ["na"] . "'," 
                      
              "'" $_POST ["vn"] . "', " 
                      
              $_POST ["pn"] . ", " 
                      
              $_POST ["ge"] . ", " 
                      
              "'" $_POST["gt] . "')"; 

                     mysqli_query($con, $sql); 
                 
                     $num = mysqli_affected_rows($con); 
                     if ($num>0) 
                     { 
                       
                     echo "<p><font color='
              #00aa00'>"; 
                     
              echo "Es wurde ein Datensatz hinzugefügt"
                     echo 
              "</font></p>"

                     } 
                     else 
                     { 
                     
                     echo 
              "<p><font color='#ff0000'>"
                     echo 
              "Es ist ein Fehler aufgetreten, "
                     echo 
              "es wurde kein Datensatz hinzugefügt"
                     echo 
              "</font></p>"
                     
                   } 

                   
              mysqli_close($con); 

                 } 

              <? 
              <
              head
              <
              body
              <
              p>Geben sie bitte einen vollständigen Datensatz ein<br /> 
              und senden Sie das Formular ab:</p
              <
              form action "db_erzeugen.php" method "post"
                 <
              p><input name "na" /> Name</p
                 <
              p><input name "vn" /> Vorname </p
                 <
              p><input name "pn" /> 
                    
              Personalnummer (eine ganze Zahl)</p
                 <
              pinput name "ge" /> Gehalt  
                    
              (Nachkommastellen mit Punkt) </p
                 <
              pinput name "gr" /> Geburtsdatum 
                    
              (in der Form JJJJ-MM-TT)</p
                 <
              p><input type ="submit" name "gesendet" /> 
                 <
              input type "reset" /></p

              </
              form

              <
              pAlle Datensätze <a href="db_tabelle.php">anzeigen</a></p

              </
              body
              </
              html>
              und darin dein code..

              wäre echt nett von dir

              Kommentar


              • #8
                Zitat von tryveryhard Beitrag anzeigen
                ja du hast einen code gepostet, der bei mir nicht so geht wie gewünscht. vielleicht habe ich ihn einfach nur falsch eingesetzt wäre toll wenn du mir den ganzen code gleich einbaust sprich mir meinen code mit deinem ersetzen code gibst

                also:

                PHP-Code:
                <html> 
                <head> 
                <?php 
                   
                if (isset($_POST["gesendet"])) 
                   { 
                      
                $con mysqli_connect("""root"); 
                      
                mysqli_select_db($con"firma"); 

                      
                $sql "insert personen" 
                        
                "name, vorname, personalnummer," 
                        
                "gehalt, geburtstag) values " 
                        
                "('" $_POST ["na"] . "'," 
                        
                "'" $_POST ["vn"] . "', " 
                        
                $_POST ["pn"] . ", " 
                        
                $_POST ["ge"] . ", " 
                        
                "'" $_POST["gt] . "')"; 

                       mysqli_query($con, $sql); 
                   
                       $num = mysqli_affected_rows($con); 
                       if ($num>0) 
                       { 
                         
                       echo "<p><font color='
                #00aa00'>"; 
                       
                echo "Es wurde ein Datensatz hinzugefügt"
                       echo 
                "</font></p>"

                       } 
                       else 
                       { 
                       
                       echo 
                "<p><font color='#ff0000'>"
                       echo 
                "Es ist ein Fehler aufgetreten, "
                       echo 
                "es wurde kein Datensatz hinzugefügt"
                       echo 
                "</font></p>"
                       
                     } 

                     
                mysqli_close($con); 

                   } 

                <? 
                <
                head
                <
                body
                <
                p>Geben sie bitte einen vollständigen Datensatz ein<br /> 
                und senden Sie das Formular ab:</p
                <
                form action "db_erzeugen.php" method "post"
                   <
                p><input name "na" /> Name</p
                   <
                p><input name "vn" /> Vorname </p
                   <
                p><input name "pn" /> 
                      
                Personalnummer (eine ganze Zahl)</p
                   <
                pinput name "ge" /> Gehalt  
                      
                (Nachkommastellen mit Punkt) </p
                   <
                pinput name "gr" /> Geburtsdatum 
                      
                (in der Form JJJJ-MM-TT)</p
                   <
                p><input type ="submit" name "gesendet" /> 
                   <
                input type "reset" /></p

                </
                form

                <
                pAlle Datensätze <a href="db_tabelle.php">anzeigen</a></p

                </
                body
                </
                html>
                und darin dein code..

                wäre echt nett von dir
                1. Schau dir den Code von moma doch mal an. Wenn du damit nichts anfangen kannst, kann ich dir diese Seite sehr ans Herz legen: https://www.google.de/
                Du musst dich nun leider schon mal ein bisschen selber reinlesen und denken. Wir machen nicht deine arbeit.

                2. Dein Code den du da gepostet hast, wird nicht funktionieren. Der ist total durcheinander und auch nicht richtig. Das sagen dir schon die Farben, wie der Code in den Tags dargestellt wird. Da solltest du dich auch nochmal dransetzen.

                3. Noch einen nützlichen Link vielleicht: Grundlagen

                Kommentar


                • #9
                  Zitat von tryveryhard Beitrag anzeigen
                  Ich verstehe nur Bahnhof, kannst du mir eventuell einen funktionieren Code posten?

                  edit wenn ich $_POST mit var_dump($_POST) ersetze folgt folgende Error Meldung:

                  array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" } array(1) { ["gesendet"]=> string(6) "Senden" }
                  du hast den code schon verbessert nach #2? wieso posted du dann den alten code?
                  das ist keine felhelrmeldung -> php-de.githup.io -> sondern der begin deiner debugging carriere.

                  nebenbei, kontrolliere mal deine iput tags/ lese bei der url was über affenformular.

                  Kommentar


                  • #10
                    Ihr sollt nicht meine Arbeit übernehmen sondern lediglich meinen Code sauber berichtigen, damit er funktioniert. Sag mir nicht was von einem totalen durcheinander, der Code ist von einem alten LB abgeschrieben, welches ich in meinem Keller gefunden habe. Ich bin noch PHP Anfänger und finde es echt dreist, wie ihr hier vorgeht. Ich habe eine einfache Frage sowie eine einfache Aufforderung gestellt, d.h. nicht, dass ich irgendwelche Google Links möchte, sondern lediglich einen gefixxten Code! Ist das so schwer zu verstehen? Mein Gott, da braucht man einmal in seinem Leben Hilfe und dann kommen wieder die Overpros.

                    Kommentar


                    • #11
                      Fehler - Eintragung in die MySQL Datenbank

                      Variante 1:
                      Zitat von tryveryhard
                      wäre toll wenn du mir den ganzen code gleich einbaust
                      Variante 2:
                      Zitat von tryveryhard
                      Ihr sollt nicht meine Arbeit übernehmen sondern lediglich meinen Code sauber berichtigen, damit er funktioniert.
                      Freundlich gefragt...wo ist da der Unterschied?
                      Zitat von tryveryhard
                      Sag mir nicht was von einem totalen durcheinander, der Code ist von einem alten LB abgeschrieben, welches ich in meinem Keller gefunden habe.
                      Sei doch froh, dass dich jemand darauf hinweist. Versuch dich an aktuellen Tutorials und Manuals. Das hilft dir sicher weiter.

                      Und sei bitte so nett und schau´ dir die Forenregeln an, hier wird Hilfe zur Selbsthilfe angeboten. Zeig´ Initiative, versuch´ dich am Code, debugge ordentlich und frag´ um Hilfe, wenn es an einer bestimmten Stelle ( deswegen debuggen ) hängt. Dann wird dir sicher geholfen.
                      Delirius

                      PHP - Grundlagen / PDO - Tutorial / PDO - Dokumentation

                      Kommentar


                      • #12
                        Sei doch froh, dass dich jemand darauf hinweist. Versuch dich an aktuellen Tutorials und Manuals. Das hilft dir sicher weiter.
                        Kann schon sein das Tutorials & co helfen, allerdings habe ich andere Quellen zum lernen. Um allerdings weiter zu lernen brauche ich einen gefixxten Code, welcher derzeit (noch!) nicht funktioniert. ich habe euch höflich gebeten mir einen sauberen Code zu geben, da ich mit meinen Kenntnissen dort nicht weiter
                        komme. ich habe schon alles probiert & Google ebenfalls befragt. Dann kommt ihr mit irgendwelchen Antworten die mir nicht weiterhelfen. Ich hoffe einfach mal es findet sich noch ein User, der mir einen vollständigen (funktionieren) Code bieten kann.-

                        Kommentar


                        • #13
                          Fehler - Eintragung in die MySQL Datenbank

                          Zitat von tryveryhard
                          Um allerdings weiter zu lernen brauche ich einen gefixxten Code, welcher derzeit (noch!) nicht funktioniert.
                          Tut mir leid, das versteh´ ich nicht...warum brauchst du einen fertigen Code, um zu lernen? Tutorials und das PHP-Manual haben doch alle Informationen, um die Basics zu lernen, da wird dir auch alles erklärt, in einem fertigen Code nicht.

                          Zitat von tryveryhard
                          Ich hoffe einfach mal es findet sich noch ein User, der mir einen vollständigen (funktionieren) Code bieten kann.
                          Ohne dir die Hoffnung rauben zu wollen...darauf wartest du wahrscheinlich länger. Besser wäre es, wenn du ins Job- oder Freizeitforum schreibst.
                          Delirius

                          PHP - Grundlagen / PDO - Tutorial / PDO - Dokumentation

                          Kommentar


                          • #14
                            Tut mir leid, das versteh´ ich nicht...warum brauchst du einen fertigen Code, um zu lernen? Tutorials und das PHP-Manual haben doch alle Informationen, um die Basics zu lernen, da wird dir auch alles erklärt, in einem fertigen Code nicht.
                            Ich baue mir gerade ein eigenes (funktionierendes) Test System auf. Alles was ich dafür brauche ist erklärt, allerdings kann ich nur weiter machen, sobald der oben benannte Code funktioniert, da sonst alle anderen Funktionen auch nicht funktionieren.

                            Laut den anderen Usern ist das ja nicht viel, was geändert werden muss, also bin ich zuversichtlich das mir hier noch jemand helfen kann..

                            Kommentar


                            • #15
                              Zitat von tryveryhard Beitrag anzeigen
                              Ihr sollt nicht meine Arbeit übernehmen sondern lediglich meinen Code sauber berichtigen, damit er funktioniert. Sag mir nicht was von einem totalen durcheinander, der Code ist von einem alten LB abgeschrieben, welches ich in meinem Keller gefunden habe. Ich bin noch PHP Anfänger und finde es echt dreist, wie ihr hier vorgeht. Ich habe eine einfache Frage sowie eine einfache Aufforderung gestellt, d.h. nicht, dass ich irgendwelche Google Links möchte, sondern lediglich einen gefixxten Code! Ist das so schwer zu verstehen? Mein Gott, da braucht man einmal in seinem Leben Hilfe und dann kommen wieder die Overpros.
                              Das hat nichts mit "overpros" zu tun! Wir wollen lediglich das du verstehst was du da machst. Bzw das du deinen Code verstehst!

                              Momentan kommst du so rüber:
                              "Hier ist mein Code, geht nicht, das soll er machen, macht mal!"

                              Das ist momentan deine Aussage und meinst du das wir Lust haben solchen Leuten zu helfen?

                              Kommentar

                              Lädt...
                              X