Ankündigung

Einklappen
Keine Ankündigung bisher.

Formulardaten

Einklappen

Neue Werbung 2019

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

  • Formulardaten

    Ich habe ein Formular, dessen Daten in einer MySQL Datenbank gespeichert werden. wenn ich jetzt die daten eingebe und auf senden klicke wird auch genau das gemacht. wenn ich aber dann auf F5 drücke und aktualisiere, speichert er mir den gleichen Datensatz nochmal in der Datenbank ab. Weiss jemand wie ich das umgehen kann? Hier der Code:

    <html>
    <head>
    <?php
    if ($gesendet)
    {
    $db = mysql_connect();

    $sqlab = "insert name";
    $sqlab .= "(Datum, Firma,";
    $sqlab .= " Name, Telefon, Frage) values ";
    $sqlab .= "(now(), '$pn', '$ge', '$gt', '$message')";

    mysql_db_query("telefon", $sqlab);

    $num = mysql_affected_rows();
    if ($num>0)
    echo "Es wurde 1 Datensatz hinzugefügt

    ";
    else
    {
    echo "Es ist ein Fehler aufgetreten, ";
    echo "es wurde kein Datensatz hinzugefügt

    ";
    }
    mysql_close($db);
    }
    ?>
    </head>

    <body>
    <table><tr><td></td></tr>
    Geben Sie die Daten des Telefongesprächs ein:</td></tr>
    <form action = "testphp.php" method = "post">
    <tr><td> Firma: </td><td><input name="pn" size="33"></td></tr>
    <tr><td> Name: </td><td><input name="ge" size="33"></td></tr>
    <tr><td> Telefon: </td><td><input name="gt" size="33"></td></tr>
    <tr><td valign="top"> Frage/Problem:</td><td><textarea name="message" cols="25" rows="4">
    </textarea></td></tr>
    <tr height="60"><td><input type="submit" name="gesendet"></td>
    <td><input type="reset"></td></tr>
    </form>
    </table>

    Alle Datensätze anzeigen
    </body>
    </html>


  • #2
    woe wärs mit der suche die frage kam gestern und vorgestern und am tag davor und an dem davor auh schon
    mfg Floh

    Programmers don't die, they GOSUB without RETURN

    Kommentar


    • #3
      ich hab zwr jetzt gesuch und auch was gefunden, aber es funktioniert nicht. kann mir vielleicht jemand in den obigen code das einbauen, das er überprüft ob der eintrag schon vorhanden ist, wenn ja dann kommt eine Meldung wenn nicht soll ganz normal weiter gemacht werden

      Kommentar


      • #4
        Hallo,

        hinter
        Code:
        $num = mysql_affected_rows(); // Abfrage nach den gefundenen Datensätzen
        if ($num>0) // falls Datensatz schon vorhanden
        send_query("UPDATE $DBtabelle SET Spalte='$spalte'"); // Aktualisieren des Datensatzes - kein doppelter Eintrag
        ich kann aus Deinem Code nicht erkennen, wie die Datenbanktabelle heißt, deshalb habe ich hier $DBtabelle als Platzhalter angegeben. Gleiches gilt für die Spalte. Wenn Du mit Variablen arbeitest, kannst Du diese gut in den Update-Befehl einsetzen.
        http://dev.mysql.com/doc/mysql/de/UPDATE.html

        Gruß,

        kamalo

        Kommentar

        Lädt...
        X