Hoi,

Als ik een rij insert in mijn database, worden er soms 1, soms 2, soms 3 en soms zelfs 4 dezelfde rijen in mijn database ingevoegd. Ik gebruik het volgende script:

$db = mysql_connect("localhost", "root", "password");
mysql_select_db("mydb", $db);

$sql = "INSERT INTO Berichten (naam, bericht) VALUES ('$_GET[naam]', '$_GET[bericht]')";
$result = mysql_query($sql,$db);

Het is me echt een raadsel waarom php besluit om meerdere rijen in te voegen. Weet iemand hoe dit komt en hoe het is op te lossen? Bij voorbaat dank.
Laten we eerst eens de code netjes maken.

$db = mysql_connect("localhost", "root", "password");
mysql_select_db("mydb", $db);

$sql = "INSERT INTO Berichten (naam, bericht) VALUES ('" . $_GET[naam] . "', '" . $_GET[bericht] . "')";
$result = mysql_query($sql, $db);

Voor de rest kijk eens of dit stuk code ergens in een lus of functie staat.
Nee dit stuk code staat niet in een lus. Het is namelijk de enige code in het bestand. Dus daar kan het niet aan liggen.
Dave wat is de nut ervan wat jij doet met
$sql = "INSERT INTO Berichten (naam, bericht) VALUES ('" . $_GET[naam] . "', '" . $_GET[bericht] . "')";
$result = mysql_query($sql, $db);

want dat van jeroen is gewoon goed hoor, zo doe ik het ook, en werkt altijd, jij doet het gewoon dubbelop met die kommas
Je moet vars buiten de quotes halen ho0r :)
"dat van jeroen is gewoon goed hoor, zo doe ik het ook, en werkt altijd, jij doet het gewoon dubbelop met die kommas"

Inderdaad Mitch. Je kunt geluk hebben dat je server het goed parsed, maar anders heb je pech en kun je wel eens lang blijven zoeken naar de fout. iig, werk altijd netjes zodat er niet nog eens extra foutjes blijven komen.

@jeroen -> welke SQL draai je?
Ik zie dat het versie 3.23.57 is. Mijn orginele script doet het gewoon. Er wordt altijd een rij aangemaakt in mijn database. Maar het probleem is niet dat er geen rij wordt aangemaakt, maar dat er teveel (dezelfde) rijen worden aangemaakt.
Als ik hem in de opdrachtregel van mysql intype dan komt er wel gewoon 1 rij bij. Alleen via php komen er meestal meer.
Dan moet je even gaan zoeken waar de fout precies komt:

1) Include je het bestand? Zo ja, kijk dan het bestand na waaruit je include.

2)Als het nog niet weg is, doe dan achter $result eens die(); zetten, om te kijken of er achter dit script nog wat gebeurt.

3) Kijk of de $_GET variabelen goed zijn, en overeenkomen met de typen in MySQL.

4) Ik heb geen ID meer :D
1. Nee ik zei al, het is een simpel bestand met alleen bovengenoemd script.
2. Dat ga ik zo proberen, ga nu eten. Maar ik denk het niet, aangezien dit de enige tekst is in het bestand.
3. Die komen overeen, anders zou er toch ook geen rij ingevoegd worden in de tabel?
4. Ik heb zelf ook geen idee meer. Anyone else?

Reageren