Page 1 sur 1

lien dans un tableau

Posté : 18 mars 2006, 08:44
par roxor45
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 :)

Posté : 18 mars 2006, 10:34
par mario
Oriente toi vers le javascript pour ce qui est de l'ouverture d'une fenêtre

Posté : 18 mars 2006, 10:52
par roxor45
oki merci mario je vais aller voir ce que je peux en tirer


merci :)

Posté : 18 mars 2006, 11:12
par charabia
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 !

Posté : 18 mars 2006, 11:54
par roxor45
oki merci je vois ca

Posté : 18 mars 2006, 12:02
par roxor45
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";

Posté : 18 mars 2006, 12:04
par Truc
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'];

Posté : 18 mars 2006, 12:07
par mario
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:

Posté : 18 mars 2006, 12:09
par roxor45
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

Posté : 18 mars 2006, 12:12
par mario
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:

Posté : 18 mars 2006, 12:20
par roxor45
ouai c'est pas faux :)

faut y penser

Merci encore

Posté : 18 mars 2006, 12:21
par charabia
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)...