$_POST différent en fonction de la ligne choisie

Petit nouveau ! | 5 Messages

09 nov. 2011, 14:31

Bonjour à tous!

Tout d'abord je tiens à préciser que je suis vraiment débutant en PHP.

Je suis actuellement en train de développer une application PHP/MYSQL dans le cadre de mon travail.
Jusqu'à aujourd'hui, j'ai réussi à m'en sortir en apprenant sur le tas et grâce aux nombreux cours qui existent sur le Net.

Voilà mon problème :

J'ai une page PHP servant à gérer des crédits, qui affiche le résultat d'une requête MYSQL dans un tableau.
Le tableau est complété grâce à une boucle while :

Code : Tout sélectionner

while ($cred=$res->fetch())
Chaque ligne affiche le nom du client ainsi que le montant du crédit qui lui est associé.
Jusque là aucun problème.

J'aimerai maintenant qu'on puisse afficher le détails concernant chaque crédit. J'ai donc ajouté une colonne détails avec une petite image (voir fichier-joint).
tab.jpg
Mon problème est assez simple, je n'arrive pas à récupérer l'ID du client correspondant à la ligne sur laquelle on a cliqué.
j'ai essayé de passer par un formulaire avec un champ "hidden" mais ça n'a pas marché

Je ne sais pas si je me suis bien fait comprendre, n'hésitez pas à me poser des questions si besoin.

merci d'avance :)
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

Eléphant du PHP | 184 Messages

09 nov. 2011, 14:40

Je pense qu'il nous faudrait le bout de code en question :)

Petit nouveau ! | 5 Messages

09 nov. 2011, 14:46

Code : Tout sélectionner

<?php while ($cred=$res->fetch()) { $res2=GetClientbyID($cred['ID_cli']); $client=$res2->fetch(); $date=date("d/m/Y", strtotime($cred['Date_cred'])); echo' <tr> <td><center>'.$client['Nom_cli'].' '.$client['Prenom_cli'].'</center></td> <td><center>'.$date.'</center></td> <td><center>'.$cred['totalcred'].' Ar</center></td>'; if (($cred['Statut_cred'])=='En cours') { echo '<td><center><font color ="red"><b>'.$cred['Statut_cred'].'</b></font></center></td> <td> <center> <input type="image" src="images/details.png" onclick="submit"></center> </td> </tr>'; } else if (($cred['Statut_cred'])=='Payé') { echo '<td><center><img src="images/accept.png"></src> <font color ="green"><b>'.$cred['Statut_cred'].'</b></font></center></td> <td>Terminé</td> </tr>';
Bon OK, j'avoue que c'est vraiment crade :oops: , mais je compte bien l'améliorer après!

ViPHP
ViPHP | 2577 Messages

09 nov. 2011, 15:03

Bonjour,

Tu peux remplacer les images utilisées comme bouton par un lien classique <a> avec href="tapage.php?ID_cli=????" (en fonction de $cred['ID_cli'])

Tu peux également faire un formulaire pour chaque ligne du tableau au lieu du tableau entier.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

09 nov. 2011, 15:09

salut,

tu a deja l'id du client : $cred['ID_cli'] (1ère ligne du while)

pour l'affichage du détails (autre page ou popup comme tu veux). il fuat un simple lien (en général celui contient l'image)
exemple
echo '<a href="detailcli.php?id='.$cred['ID_cli'].'" alt="Voir détails"><img src="images/accept.png" /></a>';

pff Mazarini est plus rapaide ^^

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 5 Messages

09 nov. 2011, 15:15

Je viens d'essayer et ça marche nickel avec la première solution (passage dans l'URL et récupération avec $_GET[...])
Je n'y avais pas pensé...
C'est tout bête mais j'aurai pu rester coincé hyper longtemps.

Merci beaucoup à vous deux, vous me sauvez :D