Daten werden in der Datenbank nicht gespeichert

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

  • Daten werden in der Datenbank nicht gespeichert

    Ich habe folgende Problem var_dump($_POST); zeigt an das der string an $art übergeben wird aber es wird nichts in die Datenbank eingetragen.

    Obwohl die beiden unterliegende codes eingefügt sind geben sie keinen Fehler aus ledeglich die If-Schleife am Ende gibt "Error:" aus

    Das Connecten zur Datenbank funktioniert ohne Probleme

    Code:
    <?php
    ini_set('display_errors'-0);
    error_reporting(E_ALL);
    ?>
    Php-Script
    Code:
    <?php
    $art = $_POST['artnr']; 
    $sql = mysqli_query("INSERT INTO artikel (titel) VALUES ('$art'])");
    		
    if (!mysqli_query($con,$sql))
      {
      die('<br>Error: ' . mysqli_error($con));
      }
    echo "1 record added";
    ?>
    Form
    Code:
    <html>
    <form action="insert.php" method="post">
    ArtNr:<input type="text" name="artnr">
    <input type="submit" value="OK">
    </form>
    </html>
    Irgendjemand eine Idee was ich falsch gemacht habe?
    Zuletzt geändert von Hinkel; 23.10.2013, 15:39.

  • #2
    Du rufst mysqli_query zwei mal auf – und beim zweiten mal mit einem Parameter, der überhaupt keinen Sinn ergibt.

    (Und der erste Aufruf geht natürlich wegen der fehlplatzierten eckigen Klammer schief.)
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Okay danke erst mal für die Antwort die ] klammer ist jetzt auch raus^^

      Allerdings verstehe ich nicht wo ich mysqli_query zum 2 mal aufrufe?

      Kommentar


      • #4
        PHP-Code:
        // Ein Mal
        $sql mysqli_query("INSERT INTO artikel (titel) VALUES ('$art'])");
        // Zwei Mal        
        if (!mysqli_query($con,$sql)) 
        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Aber das ist doch durch das Ausrufezeichen ungleich mysqli_query der nur ausgeführt wird wenn $sql nicht ausgeführt wird oder liege ich damit etwa komplett falsch

          Kommentar


          • #6
            Nein. if (!mysqli_query($con,$sql)) bedeutet, dass du die Funktion mysqli_query aufrufst und die Bedingung greift dann, wenn die aufgerufene Funktion ein false zurückgibt. Ausgeführt wird sie auf jeden Fall.

            Peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar


            • #7
              Ah Okay danke für die Information ich habe jetzt mal die If-Schleife rausgeschmissen dann kommt aber außer das die Ausgabe von der Schleife nicht mehr kommt ist gar nix verschieden.

              Und wenn ich ich nur mysqli_query von den Insert Into wegmache kommt duplicate entry '' da er kein Wert bekommt.

              Also was soll ich den verändern damit er den Wert nun in die Datenbank reinschreibt?

              Kommentar


              • #8
                Mach deine Query ein mal, und frag dann die Datenbank nach eventuellen Fehlern.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  If-Schleifen sind leider unmöglich.
                  Wir werden alle sterben

                  Kommentar


                  • #10
                    Wie soll ich den mein Code auf Fehler überprüfen die Codes sind beide drinnen.

                    Kommentar


                    • #11
                      wie wäre es mit :

                      PHP-Code:
                      $result mysql_query($sql); 
                      Gruß Me7z

                      Kommentar

                      Lädt...
                      X