Sélectionner une ligne précise de ma table

Eléphant du PHP | 77 Messages

22 sept. 2005, 18:49

Bonjour,

je cherche à supprimer un enregistrement de ma table dont je connais le numéro de ligne.
C'est tout con, mais je ne vois pas comment écrire ma requête :
$requete = "DELETE FROM table WHERE laLigneEnQuestion = 12";
Merci. lulu.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

22 sept. 2005, 20:05

Salut, comment récupere tu le numéro de ligne ? n'y a t'il pas moyen de récupèrer l'id de la ligne, ou peut etre ton numero de ligne correspond a cet "id", dans ce cas:
$ligne=12; // je pense que cette valeur sera variable
$requete = "DELETE FROM table WHERE id =".$ligne;

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 77 Messages

22 sept. 2005, 20:41

Il faut que je passe par le numéro de la ligne arce que plusieurs enregistrements peuvent être identiques.
Effectivement le numéro de ligne est variable : je le récupère de la manière suivante :

J'affiche n lignes de tableaux correspondant à mes enregistrements avec en bout de ligne un bouton "supprimer", nommés bt1, bt2, etc., par exemple. au clic d'un de ces boutons, je décompose le nom du bouton et j'obtiens la ligne où se situe mon enregistrement.
J'ajoute, car je viens d'y penser, que le numéro de la ligne correspond au numéro à partir du premier enregistrement sélectionné (parmi mes n enregistrements dans la table, je n'en affiche que quelques uns).

Je ne sais pas si je suis clair mais merci. lulu.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

22 sept. 2005, 21:18

parce que plusieurs enregistrements peuvent être identiques.
Pas possible ça !!!
il doit forcément y avoir un id pour différencier chaque ligne.
Sinon je ne crois pas que ce soit possible (en tout cas pas a ma connaissance) rien qu'avec le numero de ligne de l'enregistrement.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 2144 Messages

22 sept. 2005, 21:38

Il n'y a pas d'ordre natif dans une table, si il n'y a pas d'id, rien ne garantit l'ordre dans lequel les données seronr renvoyées par le sgbd.
Dans ton cas, il faut que tu ajoutes un champ id, éventuellement en autoincrément

Eléphant du PHP | 77 Messages

22 sept. 2005, 22:12

Si je rajoute un id, cela veut dire que je dois appeler mes boutons avec l'id correspondant à la ligne.
Mouais, je crois que je m'y suis mal pris dès le départ.

Merci. lulu.