Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] "Datenbankeinspeisung" - kein Fehlen geht trotzdem nicht

Einklappen

Neue Werbung 2019

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

  • [Erledigt] "Datenbankeinspeisung" - kein Fehlen geht trotzdem nicht

    Vorab: Habe das hier hinein gepostet da ich am lernen von PHP bin und vermute dass der fehler in PHP liegt.

    Nun denn: Ich versuche daten in eine bestehende MySQL Datenbank einzuspeisen. Wenn ich auf Abschicken klicke passiert jedoch gar nichts.

    Hier der Code:
    PHP-Code:
    <h3>Neuen Eintrag machen</h3>
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <table border=0><tr><td>Name:</td><td><input type="text" name="name" /></td></tr>
    <tr><td>ICQ:</td><td><input type="text" name="icq" /></td></tr>
    <tr><td>Notizen:</td><td><textarea cols="60" rows="5" name="notizen"></textarea></td></tr></table></form>
    <input type="submit" value="Abschicken" name="submit">
    <?php
    if (!empty($_POST["submit"])) {
    mysql_connect("localhost""GEHEIM ;)""GEHEIN ;)") or die("Die Verbindng zu MySQL ist gescheitert. Bitte benachichtigen sie den Webmaster.");
    mysql_select_db("wers93") or die("Die Verbindng zur Datenbank ist gescheitert. Bitte benachichtigen sie den Webmaster.");
    $sql="INSERT INTO icq " .
    "(id, Name, ICQ, Notizen)" 
    " VALUES ('', '$_POST[name]', '$_POST[icq]', $_POST[notizen]')";
    if (
    mysql_query($sql)) {
     echo 
    "<p>Dateneingabe erfolgreich!</p>";
    }else {
     echo 
    "<p>Dateineingabe fehlgeschlagen - bitte versuchen sie es erneut</p>";
    }
    mysql_close();
    }
    ?>
    Danke im Vorraus

    wers1

  • #2
    Wie wärs wenn du dir $sql mal vorm Query ausgeben lässt und bei Dateneingabe fehlgeschlagen [man]mysql_error[/man]

    Kommentar


    • #3
      Zitat von wers1 Beitrag anzeigen
      PHP-Code:
      $sql="INSERT INTO icq " .
      "(id, Name, ICQ, Notizen)" 
      " VALUES ('', '$_POST[name]', '$_POST[icq]', $_POST[notizen]')"
      Würde jetzt mal sagen du hast die einfach Anführungszeichen falsch gesetzt.

      Versuchs mal so:

      PHP-Code:
      $sql="INSERT INTO icq " .
      "(id, Name, ICQ, Notizen)" 
      " VALUES ('', $_POST['name'], $_POST['icq'], $_POST['notizen'])"
      Wenn das nicht klappt, versuchs mal mit $_POST["name"] usw...
      Bin mir grad nicht ganz sicher

      Gruß
      Ramona
      Am Ende wird alles gut!
      Wenn es nicht gut ist, ist es noch nicht das Ende.

      Kommentar


      • #4
        Du solltest dich mal ein wenig mit der Verknüpfung von Zeichenketten befassen. Dann würde dann deine Abfrage etwa so aussehen:
        PHP-Code:
        $sql "INSERT INTO icq 
                    (Name, ICQ, Notizen)
                VALUES (
                    '" 
        $_POST['name'] . "', 
                    '" 
        $_POST['icq'] . "', 
                    '" 
        $_POST['notizen'] . "'
                )"

        Die id brauchst du, sofern sie mit AUTOINCREMENT definiert wurde, nicht anzugeben.
        Und dass dein Code keine Fehler generiert, kannst du erzählen, wem du willst, aber nicht in diesem Forum.
        Gruss
        L

        Kommentar


        • #5
          hier ist das ganze mal hochgeladen zum vergewissern dass KEINE fehler kommen.

          kann aber sein dass ihr gleich welche erntet weil ich eure vorschläge jetzt mal ausprobiere.

          danke erstmal.

          SEITE




          Ok, denke dass ich alle varianten ausprobiert habe. nix geht. habe das ganze aus nem buch mit dem ich PHP lerne und ein bisschen umgeändert. werde jetzt mal die cd vom buch suchen und mal das beispiel modifizieren und hochladen.

          Kommentar


          • #6
            Zitat von wers1 Beitrag anzeigen
            PHP-Code:
            if (!empty($_POST["submit"])) { 
            Versuchs mal mit
            PHP-Code:
            if (isset($_POST["submit"])) { 
            Grüße
            Ramona
            Am Ende wird alles gut!
            Wenn es nicht gut ist, ist es noch nicht das Ende.

            Kommentar


            • #7
              der fehler ist zwar NOCH nicht gefunden habe aber das aus dem buch geändert udn es geht jetzt

              trotzdem vielen dank

              Kommentar


              • #8
                Zitat von Ramona86 Beitrag anzeigen
                Versuchs mal mit
                PHP-Code:
                if (isset($_POST["submit"])) { 
                Grüße
                Ramona
                Was versprichst du dir davon? !empty() impliziert immer isset(), prüft aber auch noch auf einen Leerstring und 0.
                Aber den Fehler habe ich ja schon aufgezeigt, du kannst innerhalb eines Stringst keine assoziativen Array-Elemente angeben, sondern musst diese mit dem Punkt-Operator damit verketten
                Gruss
                L

                Kommentar


                • #9
                  es geht auch mit der verkettung wie ich sie gemacht habe. das war nciht der fehler. ich vermute der fehler war nur in nem kleinem zeichen irgendwo.

                  Kommentar

                  Lädt...
                  X