is mysql_affected_rows() de juiste functie voor deze situatie?
cygio
01/03/2009 21:38:00HoiHoi,
Ik wil graag controleren of mijn update query is uitgevoerd.
Dit lukt met affected rows, dus tot hier geen probleem.
Het volgende is wel het problem:
Middels een wijzigingsformulier kan ik gegevens in de database wijzigen,als het niet lukt om de gegevens te updaten in de db, dan krijg ik netjes de bijhorende fout.
Maar als ik wel het formulier verstuur, maar niets in de gegevens heb veranderd, dus precies zo terug stuur als het formulier uit de db kwam .
Dan krijg ik dezelfde fout als wanneer het updaten niet is gelukt.Logisch want er wordt niks in de dbrij veranderd.
Dit wil ik nu niet, hoe kan ik dit oplossen? een andere functie gebruiken of is er een andere manier
groet
Ik wil graag controleren of mijn update query is uitgevoerd.
Dit lukt met affected rows, dus tot hier geen probleem.
Het volgende is wel het problem:
Middels een wijzigingsformulier kan ik gegevens in de database wijzigen,als het niet lukt om de gegevens te updaten in de db, dan krijg ik netjes de bijhorende fout.
Maar als ik wel het formulier verstuur, maar niets in de gegevens heb veranderd, dus precies zo terug stuur als het formulier uit de db kwam .
Dan krijg ik dezelfde fout als wanneer het updaten niet is gelukt.Logisch want er wordt niks in de dbrij veranderd.
Dit wil ik nu niet, hoe kan ik dit oplossen? een andere functie gebruiken of is er een andere manier
groet
PHP hulp
17/11/2024 08:37:06Frank -
01/03/2009 21:48:00Quote:
Dan krijg ik dezelfde fout als wanneer het updaten niet is gelukt.
Dat is geen fout, er zijn gewoon 0 records bijgewerkt. mysql_affected_rows() geeft dan ook het aantal 0 door.
Voorbeeldje:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
//
if(mysql_affected_rows() === 0){
// geen records bijgewerkt/verwijderd
} elseif(mysql_affected_rows() > 0) {
// wel records bijgewerkt/verwijderd
} else {
// query mislukt
}
?>
//
if(mysql_affected_rows() === 0){
// geen records bijgewerkt/verwijderd
} elseif(mysql_affected_rows() > 0) {
// wel records bijgewerkt/verwijderd
} else {
// query mislukt
}
?>
Foutafhandeling staat hier los van, dan is de query technisch mislukt.