MySQL DB speichert Formulardaten nicht

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

  • MySQL DB speichert Formulardaten nicht

    Ich hoffe mal, dass ich mit diesem Problem hier im richtigen Forum bin. Und zwar funktioniert bei mir das Speichern von Formulardaten in einer Tabelle nicht, wenn die Texte in den Textfeldern zu lang werden (wobei sie das Zeichenlimit des Feldtyps nicht überschreiten).

    Das Script soll die Variablen auf diese Art speichern:

    PHP-Code:
    $dbconn mysql_connect("localhost""xxx""xxx" ); 
    $result mysql_select_db("xxx"$dbconn); 

    $sql "INSERT INTO mitglieder (nachname, vorname, [...] kommentar) VALUES ('$nachname', '$vorname', [...] '')";

    $result mysql_query($sql); 
    Die [...] stehen natürlich nicht so im Code, ich habe sie nur zum Abkürzen eingebaut.

    Der Code scheint vollkommen in Ordnung zu sein, denn wenn ich ihn mit beliebig langen Texten auf dem auf meinem PC installierten Apache-Server laufen lasse, funktioniert er einwandfrei. Nur hochgeladen auf den Webserver will er nicht. Die Variablen habe ich bereits mehrfach gecheckt, sie sind in Ordnung.

    Das Formular sieht so aus:

    <form name="signup" method="post" action="signup.php">

    <input type="text" name="vorname" size="50">

    [...]

    <textarea name="hobbys" rows="7" cols="40"></textarea>

    <input type="submit" name="Submit" value="abschicken">

    </form>

    Die langen Texte werden natürlich nur in die Textarea-Felder eingeben ... Mit den einzeiligen Textfeldern scheint er keine Probleme zu haben.

  • #2
    Hast du die MySQL Operation schon mal mit mysql_error oder mysql_errno gecheckt?
    Immer erst mal gucken, ob Benzin im Tank ist ...

    Kommentar


    • #3
      Danke für den Tipp, den Befehl kannte ich noch nicht ...

      damit hab ich jetzt herausgefunden, dass die Texte nur dann nicht gespeichert werden, wenn sie entweder ' oder " enthalten.

      Bin nun am fixen des Problems ...

      Kommentar


      • #4
        Hallo. Das Problem hatte ich auch eben.
        Es reicht, beim einzutragenden Wert $wert zu setzen:
        addslashes($wert). Dann werden ' und " korrekt in die db eingetragen.
        mfg

        Kommentar

        Lädt...
        X