Zum Inhalt springen

doppelter Datenbankeintrag (PHP, JavaScript)


Empfohlene Beiträge

Hallo zusammen!

Ich habe in meiner PHP-Seite ein kleines JavaScript eingebaut welches überprüft ob ein Nutzer Daten eingetragen hat.

Jetzt zu dem, was mich hier mit offener Kinnlade und absolutem Unverständnis zurücklässt:

Wenn ich mit dem Internet-Explorer einen neuen Datensatz in eine Tabelle der MySql-Datenbank eingebe, wirds doppelt eingetragen.

Gebe ich einen neuen Datensatz über den Opera ein, gibts keinen doppelten Eintrag. Versuche ich allerdings über den Opera einen Datensatz zu löschen, passiert gaaaaaarnix. Der Internet-Explorer wiederum machts. Vielleicht liegts am JavaScript?

Wie gesagt, ich versteh einfach nich warum. Hoffentlich kann mir noch einer helfen, bevor ich total GAGA werd.

Schonmal DANKE im voraus!

Hier mal den Quellcode:

neueintr.php:

if(isset($_POST['neuplattform']))

{

print "<table border=0>

<form name=\"neuplattform\" onsubmit=\"return fillcheck()\">

<tr><td>Plattform: </td><td><input type=\"text\" name=\"plattf\"></td><td>*</td></tr>

<tr><td><input type=\"submit\" value=\"Abschicken\"></td>

<td><input type=\"reset\" value=\"Zurücksetzen\"></td></tr>

</table>

<script language=\"JavaScript\">

function fillcheck()

{

var plattf = document.neuplattform.plattf.value;

var checked = true;

if((plattf.length==0))

{

alert(\"Bitte füllen Sie die mit * gekennzeichneten Felder aus!\");

checked= false;

return checked;

}

if (checked)

{

document.neuplattform.method = \"post\";

document.neuplattform.action = \"dbspeichern.php\";

document.neuplattform.submit();

}

return checked;

}

</script>\n";

//----------------------------------------------------------------------

dbspeichern.php:

if(isset($_POST['plattf']))

{

$conn = mysql_connect("localhost","root");

if($conn)

{

$plattf = $_POST['plattf'];

mysql_select_db("tauschboerse");

$sqlPlattf = "insert into plattform (ID,Plattform)values('','$plattf')";

$resultPlattf = mysql_query($sqlPlattf,$conn);

if($resultPlattf)

{

echo "Die neue Plattform wurde erfolgreich angelgt.";

mysql_close($conn);

}

else

{

echo "<p>" .mysql_error($conn) ."</p>";

}

}

else

{

die("<b>Verbindung zum MySQL-Server fehlgeschlagen!");

}

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Jo ist kein problem.

Schwierig zu sagen welche die bessere methode ist.

Man müßte die Varianten erstmal in allen Browserarten testen und dann sich für die entscheiden

die bei den meisten und gängigsten browsern funktioniert.

Allerdings ist weniger = mehr also die onsubmit weil man sich dann unnötigen sourcecode spart :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Jetzt funktionierts :OD Viiiiielen Dank!

Bin halt 'en JavaScript-Noob :rolleyes:

PS: Was wäre denn die elegantere oder 'bessere' Methode?

(Habe jetzt nur das form.submit rausgelöscht)

Im Allgemeinen ist es besser, den Button zu verwenden, da Javascript vom Client deaktiviert werden können.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wiso verwendest du eigentlich nicht gleich PHP um zu überprüfen, ob die Variablen richtig gefüllt sind? Javascript kann man deaktivieren, PHP ist immer aktiv.

Javascript bietet den Vorteil, da es Clientseitig läuft, dass man die Formularprüfungen durchführen kann, ohne die Seite abschicken (neu zu laden) zu müssen

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...