[php] onverklaarbare dubbele insert

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een formuliertje en als men op verzenden drukt dan zet een volgende pagina alle vars in een db (gewoon met een heel basic INSERT query).

Als ik dan in mn db ga kijken staat de rij er 2 maal in! Met precies dezelfde gegevens. Op de pagina waar de insert gedaan wordt wordt ook een password gegereerd.

Alle data in de twee rijen is precies hetzelfde, behalve het wachtwoord. Je zou dus bijna denken dat de pagina twee keer geladen wordt! (anders heeft ie niet twee verschillende wachtwoorden).

Weet iemand of dit een fout is die vaker voorkomt bij programmeurs en zo ja, hoe ik dit kan voorkomen... errug frustrerend, aangezien ik de fout echt niet kan ontdekken! En de pagina wordt echt maar een keer geladen. Dus hoe kan die dan in hemelsnaam een dubbele insert maken?

Kan het misschien aan de indeling van mn db zelf liggen?

Acties:
  • 0 Henk 'm!

Verwijderd

Zonder je code kan niemand je natuurlijk helpen. ;)

En nee, dit ligt niet aan je DB; Hoogstwaarschijnlijk aan de php-code die je gebruikt. :)

Acties:
  • 0 Henk 'm!

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Who is John Galt?


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Bedankt, er staan interresante tips in. Het is zeer zeker vergelijkbaar, alleen een andere prog taal. Ik ga even kijken, en ik zet het antwoord hier wel neer als ik er uit kom!

edit:

Het heeft duidelijk te maken met het feit dat ik een JS check doe op het form voordat ik hem verstuur. Ik heb het zelfs al getest! Bedankt, nu alleen nog een oplossing zoeken hoe ik dan mn check moet doen...

Ik heb nu iets als dit:

code:
1
2
<form onSubmit="return check()">
<input type="submit" value="verzenden">


... en in de functie check() staat dan dat ie het formulier moet verzenden als de vakjes allemaal een waarde bevatten. Dus iets als:

code:
1
2
3
4
5
if (een van de vakjes == leeg)
alert bla;
} else {
verhaal.submit();
}


Nu moet ik dit dus oplossen... Zou niet weten hoe. Maar goed, dan hebben we het weer over iets anders dan waar dit topic voor bedoeld is...

edit

Ik heb m!!!!!

Hier staat het resultaat:

code:
1
2
<form>
<input type="button" value="verzenden" onClick="check()">


Conclusie: Hij deed een dubbele submit, eentje van de knop (type=submit) en eentje in het JS..... Tnx

[ Voor 61% gewijzigd door Verwijderd op 01-04-2003 15:41 ]


Acties:
  • 0 Henk 'm!

  • Kaasplank
  • Registratie: Februari 2001
  • Niet online
PHP:
1
2
3
4
5
6
if(!$_POST['name']){
echo "leeg";
}
else {
echo "niet leeg";
}


kan gewoon in php :)

[ Voor 18% gewijzigd door Kaasplank op 01-04-2003 15:46 ]


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Als je nu gewoon dit doet in je JS functie:
JavaScript:
1
2
3
4
5
6
if (een van de vakjes == leeg)
  alert bla;
  return false;  // zorg dat het form niet gesubmit wordt
} else {
  return true; // nu wordt het form wel gesubmit
}

dan heb je dit soort problemen ook nooit meer ;)

Intentionally left blank


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
crisp schreef op 01 april 2003 @ 16:00:
Als je nu gewoon dit doet in je JS functie:
JavaScript:
1
2
3
4
5
6
if (een van de vakjes == leeg)
  alert bla;
  return false;  // zorg dat het form niet gesubmit wordt
} else {
  return true; // nu wordt het form wel gesubmit
}

dan heb je dit soort problemen ook nooit meer ;)
is precies de code die ik gebruik! tnx...
Pagina: 1