lien dans un tableau

Eléphanteau du PHP | 29 Messages

18 mars 2006, 08:44

bonjour à tous :)

je me tourne vers vous car j'aimerai rendre clicable les noms et prenoms que j'affiche dans mon tableau afin d'ouvrir une fenetre qui me permetrait d'ajouter des info sur la personne séléctionné mais je ne sais absolument pas comment faire est-ce que quelqu'un pourait m'orienter svp ?

voici mon tableau
// début du tableau ( hors boucle )
echo "<table width=\"100%\" border=\"0\" align=\"center\" bgcolor=\"#000000\" cellpadding=\"2\" cellspacing=\"1\"> \n";
echo "<tr> \n";
echo "<td width=\"12%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Grade</a></font></u></b></td> \n";
echo "<td width=\"10%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Nom</a></font></u></b></td> \n";
echo "<td width=\"10%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Prenom</a></font></u></b></td> \n";
echo "<td width=\"10%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Telephone</a></font></u></b></td> \n";
echo "<td width=\"30%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Adresse</a></font></u></b></td> \n";
echo "<td width=\"10%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Conducteur VTU</a></font></u></b></td> \n";
echo "<td width=\"10%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">Conducteur Fourgon</a></font></u></b></td> \n";
echo "<td width=\"10%\" align=\"center\" valign=\"top\" bgcolor=\"#C4D3DB\"<font face=\"Arial\" size=\"2\"><u><b><a href=\"\">CFAPSE</a></font></u></b></td> \n";
echo "</tr> \n";
$i=1;

// début de la boucle
while($tableau = mysql_fetch_array($envoi)) {
if ($i%2==0)
$color="#DEE7EB";
else
$color="#F5F5F5";

echo "<tr> \n";
echo "<td width=\"12%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Nom_Grade"]."</td> \n";
echo "<td width=\"10%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Nom"]."</td> \n";
echo "<td width=\"10%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Prenom"]."</td> \n";
echo "<td width=\"10%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Telephone"]."</td> \n";
echo "<td width=\"30%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Adresse"]."</td> \n";
echo "<td width=\"10%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Conducteur_vl"]."</td> \n";
echo "<td width=\"10%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["Conducteur_pl"]."</td> \n";
echo "<td width=\"10%\" align=\"left\" valign=\"top\" bgcolor=".$color.">".$tableau["CFAPSE"]."</td> \n";
echo "</tr> \n";
$i++;
}

// fin du tableau html ( hors boucle )
echo "</table> \n";
je tien a signaler que ce tableau n'est peut etre pas tres evoluer ni optimiser mais il fonctionne tres bien deja :)

Mammouth du PHP | 768 Messages

18 mars 2006, 10:34

Oriente toi vers le javascript pour ce qui est de l'ouverture d'une fenêtre
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Eléphanteau du PHP | 29 Messages

18 mars 2006, 10:52

oki merci mario je vais aller voir ce que je peux en tirer


merci :)

Avatar du membre
ViPHP
ViPHP | 3008 Messages

18 mars 2006, 11:12

Oui ton tableau n'est pas très optimisé. Corriges le déjà avant d'avancer ton code, il sera plus propre et plus léger. Tout ce qui est hors boucle peut être sorti hors php.

Pour ton open window, il te suffit d'intégrer un <a href...> en passant un id pour reconnaître l'enregistrement. Le align left est inutile (par défaut).
echo '<td width="12%" valign="top" bgcolor='.$color.'><a href="javascript:void(window.open(\'page.php?id='.$tableau['id'].'\',\'nomfen\',\'width=300, height=300\'))>'.$tableau['Nom_Grade'].'</a></td> \n';
NB : le & # 0 5 8 ; avant le void correspond aux ":". Il s'aggit d'un bug d'affichage !

Eléphanteau du PHP | 29 Messages

18 mars 2006, 11:54

oki merci je vois ca

Eléphanteau du PHP | 29 Messages

18 mars 2006, 12:02

un autre probleme ce pose, enfaite tous est niquel sur le tableau et le lien se crée nikel quand je clique sur un nom la seul chose que je voudrai savoir c'est comment et sous quelle forme je peut recuperer la variable id dans la popup pour faire apparaitre un echo comme celui-ci

Code : Tout sélectionner

echo "popup de $id";

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

18 mars 2006, 12:04

tout simplement avec GET, puisque c'est une variable passée dans l'url tu peux la récupérer ainsi :wink:
$id = $_GET['id'];

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

Mammouth du PHP | 768 Messages

18 mars 2006, 12:07

lorsque tu cliques sur un lien, les variables sont transmises par la méthode GET.
pour récupérer la variable id de mapage.php?id=233 par exemple,
tu utilises
<?php
$id = $_GET['id'];
?>
tu peux te documenter sur la fonction isset() qui te sera aussi très utile.

EDIT de moi même: désolé truc, c'est une réponse à retardement :lol:
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Eléphanteau du PHP | 29 Messages

18 mars 2006, 12:09

Les gars je suis trop comptent sa marche niquel et je vien d'apprendre que je peut passer plein d'info dans l'url !!

c'est genial un grand merci a tous !!!!!!!!!!!

:D :D :D

Mammouth du PHP | 768 Messages

18 mars 2006, 12:12

et je vien d'apprendre que je peut passer plein d'info dans l'url !!
:D n'oublie pas qu'il ne faut jamais donner sa totale confiance à un utilisateur (un visiteur peux se dire ... tiens donc, qu'est ce que ça fait si je change l'ID dans l'URL :-k )
Pense à toujours tester !!!! (si la variable est définie, si elle n'est pas vide, etc.)
:wink:
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Eléphanteau du PHP | 29 Messages

18 mars 2006, 12:20

ouai c'est pas faux :)

faut y penser

Merci encore

Avatar du membre
ViPHP
ViPHP | 3008 Messages

18 mars 2006, 12:21

Et surtout...surtout...même si c'est très pratique, ne jamais passer en paramètre url des mots de passe ou encore des urls complets (injection SQL)...