IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[debutant] pb table/lien


Sujet :

Langage PHP

  1. #1
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut [debutant] pb table/lien
    Bonjour,
    tout d'abord je suis pas sur d'être dans la bonne section,
    je suis étudiant en réseau donc quasi aucune connaissance en développement,

    j'ai une page php qui a pour but d'affiché les données d'une table,
    j'ai une relation de parent/enfant sur ma table, en gros chaque ligne a l'ID de son père etc etc,
    je voudrai que dans mon affichage, lorsque que je clic sur une ligne cela recharge la page en affichant uniquement les enfants,
    ca marche mais uniquement sur une table pas sur une ligne,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    	<?php
    	while ($donnees = sybase_fetch_array ($reponse))
    	{
    	?>
    	<a href="affichage.php?idp=<?php echo $donnees['OPE_ID'];?>">
    	<table>
    	<tr>
    	<td>
    		<?php echo $donnees['OPE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_PERE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_LB'];?>
    	</td><td>
    		<?php echo $donnees['STATUT'];?>
    	</td><td>
    		<?php echo $donnees['SERVEUR'];?>
    	</td><td>
    		<?php echo $donnees['DEBUT_DT'];?>
    	</td><td>
    		<?php echo $donnees['FIN_DT'];?>
    	</td>
    	</tr>
    	</table>
    	</a>
    	<?php
    	}
    	?>
    ce code marche comme je le voudrai, mais me crée une table par ligne,
    si je met ma boucle dans les balises table (pour avoir une table et un lien par ligne, plutôt que une table par ligne) je n'ai plus de lien...

    voila je suis pas sur de mettre exprimé correctement.

    merci d'avance.

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2009
    Messages : 114
    Points : 185
    Points
    185
    Par défaut
    si je t'es compris ajoute une balise <div> après la balise <a> :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?php
    	while ($donnees = sybase_fetch_array ($reponse))
    	{
    	?>
    	<a href="affichage.php?idp=<?php echo $donnees['OPE_ID'];?>">
    <div>
    	<table>
    	<tr>
    	<td>
    		<?php echo $donnees['OPE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_PERE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_LB'];?>
    	</td><td>
    		<?php echo $donnees['STATUT'];?>
    	</td><td>
    		<?php echo $donnees['SERVEUR'];?>
    	</td><td>
    		<?php echo $donnees['DEBUT_DT'];?>
    	</td><td>
    		<?php echo $donnees['FIN_DT'];?>
    	</td>
    	</tr>
    	</table>
    </div>
    	</a>
    	<?php
    	}
    	?>

  3. #3
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut
    Citation Envoyé par baderahmed Voir le message
    si je t'es compris ajoute une balise <div> après la balise <a> :
    euh ... non :$
    il faut?
    si oui, pourquoi?

    merci

    EDIT :différence affirmation interrogation a revoir, donc je test et je reviens

  4. #4
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut
    j'ai fait ca, les lignes s'affichent mais je n'ai pas de lien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    	?>
    	<table>
    	<?php
    	while ($donnees = sybase_fetch_array ($reponse))
    	{
    	?>
    	<a href="affichage.php?idp=<?php echo $donnees['OPE_ID'];?>">
    	<div>
    	<tr>
    	<td>
    		<?php echo $donnees['OPE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_PERE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_LB'];?>
    	</td><td>
    		<?php echo $donnees['STATUT'];?>
    	</td><td>
    		<?php echo $donnees['SERVEUR'];?>
    	</td><td>
    		<?php echo $donnees['DEBUT_DT'];?>
    	</td><td>
    		<?php echo $donnees['FIN_DT'];?>
    	</td>
    	</tr>
    	</div>
    	</a>
    	<?php
    	}
    	?>
    	</table>

  5. #5
    Membre éprouvé Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Points : 1 262
    Points
    1 262
    Par défaut
    Bonjour,

    si j'ai bien compris ton problème.
    Tu veux une seule table => donc il faut sortir le <table> de ta boucle while.

    pour une lien sur le tr, tu peux rajouter sur ton transformé ton <tr> avec ce code suivant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    <tr onclick="window.location.replace('http://www.un-site.com/une-page.htm');"></tr>
    edit : mon code correspond à ta première version.

  6. #6
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut
    Citation Envoyé par Bebel Voir le message
    Bonjour,

    si j'ai bien compris ton problème.
    Tu veux une seule table => donc il faut sortir le <table> de ta boucle while.

    pour une lien sur le tr, tu peux rajouter sur ton transformé ton <tr> avec ce code suivant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    <tr onclick="window.location.replace('http://www.un-site.com/une-page.htm');"></tr>
    edit : mon code correspond à ta première version.
    ma première version marche comme je le veut (lien par ligne), mais effectivement je ne voudrai qu'une seule table plutôt que autant de table que de ligne.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    	<table>
    	<?php
    	while ($donnees = sybase_fetch_array ($reponse))
    	{
    	?>
    	<!--<a href="affichage.php?idp=<?php echo $donnees['OPE_ID'];?>">-->
    	<div>
    	<tr onclick="window.location.replace('affichage.php?idp=<?php echo $donnees['OPE_ID'];?>');">
    	<td>
    		<?php echo $donnees['OPE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_PERE_ID'];?>
    	</td><td>
    		<?php echo $donnees['OPE_LB'];?>
    	</td><td>
    		<?php echo $donnees['STATUT'];?>
    	</td><td>
    		<?php echo $donnees['SERVEUR'];?>
    	</td><td>
    		<?php echo $donnees['DEBUT_DT'];?>
    	</td><td>
    		<?php echo $donnees['FIN_DT'];?>
    	</td>
    	</tr>
    	</div>
    	<!--</a>-->
    	<?php
    	}
    	?>
    	</table>
    ce code fonctionne pile comme je le veut, merci a tous.

  7. #7
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut
    ta solution marche très bien, cependant je me suis rendu compte d'un problème,

    en fait je passe un des paramètre par url pour qu'un simple retour arrière dans le navigateur face revenir l'utilisateur avec les anciens paramètres,

    hors ta méthode fonctionne bien dans un sens, mais pas du tout dans l'autre,

    on ma parlé de la fonction window.location.open(), mais je ne trouve rien dessus,

    merci d'avance

  8. #8
    Membre éprouvé Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Points : 1 262
    Points
    1 262
    Par défaut
    le window.open va ouvrir un popup.
    sinon regarde ce lien.
    tu peux utiliser un window.location.href pour pouvoir activer le retour en arriere.

  9. #9
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut
    je suis un boulet,

    merci beaucoup pour ton lien.

  10. #10
    Membre éclairé Avatar de polo(31)
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 721
    Points : 770
    Points
    770
    Par défaut
    je suis vraiment un boulet...

    The advantage our first example (location.replace) is that users can still back up in their browser*. The latter two examples break the back button on Windows IE. Users cannot leave the page by clicking it.
    dans le doute ou mes gentils users utilise IE, j'ai utilisé location.replace (plus facile pour moi, même syntaxe toussa toussa),
    sauf que ca ne change rien a l'ancienne commande,

    et il faut bien utilisé window.location.href="http://google.com";, comme quoi faut toujours écouté ce qu'on nous dit (pas testé sous IE cependant).


    EDIT : fonctionne sous IE 6

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DEBUTANT] créer le lien JDBC Oracle!!
    Par oussam dans le forum NetBeans
    Réponses: 3
    Dernier message: 09/06/2006, 11h31
  2. [Débutant] Couleurs des liens
    Par pymouse dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 11/05/2006, 09h20
  3. [debutant] Hibernate : table non crée
    Par lilou77 dans le forum Hibernate
    Réponses: 10
    Dernier message: 06/01/2006, 16h32
  4. [DEBUTANT] Changer le "lien" classique
    Par iceman2001 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/09/2005, 10h41
  5. [JSP][Struts][Debutant]Probleme de liens dans pages JSP
    Par bluefox_du_974 dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 08/12/2004, 16h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo