sql UPDATE + mysql_affected_rows
Sur ce coup là , je me suis bien fait avoir !
Je ne sais pas comment vous faites, mais quand je vais sur php.net voir le descriptif d'une fonction, je lis le début, comprends ce qu'elle fait, et teste de suite pour mettre en application. Cependant, parfois, il est indiqué un peu plus en bas des explications, que dans certains cas la fonction peut ne pas faire ca qu'elle fait d'habitude.
Mon cas était le suivant: faire un UPDATE, et savoir combien d'enregistrements ont été mis à jour. Moi je me dis: mysql_affected_rows, c'est ce qu'il me faut. Je mets mon code en place, et teste. Résultat : dans certains cas la fonction mysql_affected_rows me retourne 0, alors que l'enregistrement existe! C'est à ce moment là qu'on retourne sur php.net/mysql_num_rows, et qu'on lit (en gros): dans certains cas, si les nouvelles valeurs sont identiques aux anciennes, il se peut que la fonction etc... Bref, si je fais un UPDATE, et que les valeurs ne changent pas, l'UPDATE n'est pas fait, et la fonction retourne 0. Ah ben si on m'avait dit ça...
On en apprend vraiment tous les jours ! ;o)
Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire