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 :

Différentiation de liens crées dans une boucle


Sujet :

Langage PHP

  1. #1
    Membre éclairé Avatar de EIN-LESER
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 703
    Points : 778
    Points
    778
    Par défaut Différentiation de liens crées dans une boucle
    Bonjour a tous

    Petite question

    Je suis sur le code d'une page qui génère un tableau et le remplis dans 2 boucles.

    La première boucle détermine le nombres de données d'une table de mysql et remplis l'entête du tableau avec les résultats (nom des colonnes)

    La seconde boucle remplis le tableau en vérifiant si les entres d'une table précis ne dépasse pas un certain nombre.

    Si le nombre est dépasse ou atteint la cellule reste vide, dans le cas contraire j'y insère un lien qui ramène vers la page suivante.

    Tous les liens ramènent vers la même page et c'est la que commence mon problème.

    Quelqu'un sait il comment je peux faire pour savoir sur quel lien a cliqué l'user pour arriver sur la page suivante ou est il possible de différencier les différents liens crée par une boucle?

    Pour plus de clarté je vais vous montrer la partie de code relatif a ce merdier

    Si quelqu'un a une idée merci d'avance.

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    <?PHP
    /*Import de la page de connexion externe*/
    include("Connection_BdD.php");
    /*Connection a la base de données*/
    connexion();
     
    $jour_choisi="2004-04-04";
     
    /*Recuperation des données present dans la base de données neccesaires aux verifications.*/
    $reponse_plages_horaires=mysql_query("select * from plages_horaires");
    $num_rows_plages_horaires = mysql_num_rows($reponse_plages_horaires);
    $reponse_nombre_de_boxes=mysql_query("select * from boxes");
    $num_rows_nombre_de_boxes= mysql_num_rows($reponse_nombre_de_boxes);
     
     // Déclaration de deux tableaux vides
    $tab_resa_en_cours = array();
    $tab_plage_horaires= array();
     
    //Creation du tableau pour affichage des resultats./
    echo "<table>";
    echo "<tr>";
    $i=0;
    while($nouvelle_reponse_plages_horaires= mysql_fetch_array($reponse_plages_horaires))
    	{
    	//echo $nouvelle_reponse_plages_horaires['HORAIRES'];
    	//echo "<br/>";
    	$nouvelle_plage=$nouvelle_reponse_plages_horaires['HORAIRES'];
    	$nouvelle_id=$nouvelle_reponse_plages_horaires['ID_PLAGE_HORAIRE'];
    	echo "<th>".$nouvelle_plage."</th>";
     
    	 // Ajout des reservations dans le tableau
    	$tab_resa_en_cours[$i]=mysql_query("SELECT * from  reservation WHERE DATE ='$jour_choisi' and ID_PLAGE_HORAIRE = '$nouvelle_id' ");
     
    	$i=$i+1;
     
    	}
    echo"</tr>";
     
    echo "<tr>";
     
     // Calcul de la taille du tableau
    $taille_tab_resa_en_cours = sizeof($tab_resa_en_cours);
    // Parcours du tableau
    for($i=0; $i<$taille_tab_resa_en_cours; $i++)
    {
    $nouveau_tab=$tab_resa_en_cours[$i];
     
    $num_rows_resa_en_cours = mysql_num_rows($nouveau_tab);
     
    if($num_rows_resa_en_cours<$num_rows_nombre_de_boxes)
    	{
    	$horaire=mysql_fetch_array($nouveau_tab);
    	$horaire=$horaire['ID_PLAGE_HORAIRE'];
    	$tab_plage_horaires[$i]=$horaire;
     
    	echo "<th><a href='Formulaire_resa.php'></a></th>";
     
    	}
    	else
    		{
    		echo "<th></th>";
    		}
     
    }
     
    echo"</tr>";
     
     
    /*Fermeture de la base de données*/
    deconnexion();
    $_SESSION["Jour_choisi"] = $jour_choisi;
    echo $_SESSION["Jour_choisi"];
    function rempl_var_ses($i)
    {
     
     
     
    $_SESSION["Plage_horaire"] = $tab_plage_horaires[$i] ;
    echo $_SESSION["Plage_horaire"];
    }
    ?>

  2. #2
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Bonjour !

    Petite idée : pourquoi ne pas mettre une variable i à 1 et l'incrémenter dans le while en faisait ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo "<th><a href='Formulaire_resa.php?lien=".$i."'></a></th>";
    $i++;
    Donc tu auras forcement le numéro de la ligne concernée non?

  3. #3
    Membre éclairé Avatar de EIN-LESER
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 703
    Points : 778
    Points
    778
    Par défaut
    Bien vu merci j'en ai profité pour mettre carrement l'id qui m'interesse extraite du tableau des resultats comme sa:
    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
     
     
    if($num_rows_resa_en_cours<$num_rows_nombre_de_boxes)
    	{
    	$horaire=mysql_fetch_array($nouveau_tab);
    	$horaire=$horaire['ID_PLAGE_HORAIRE'];
    	$tab_plage_horaires[$i]=$horaire;	
     
    	//Creation des liens pour le tableau des disponibilités dans la boucle.
    	echo "<th><a href='Formulaire_resa.php?plage=$horaire'></a></th>";	
    	}
    	else
    		{
    		echo "<th></th>";
    		}
     
    }
    Merci a toi et sorry de ma réponse tardive mais l'alerte sur ma boite mail de nouveaux message marche plus apparemment

  4. #4
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Pas de soucis, super si ca marche

    Oublie pas le bouton

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 30/07/2009, 23h09
  2. [MySQL] Problème différentiation des lignes d'une table dans une boucle
    Par ppioul dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 03/05/2008, 18h21
  3. Lien dans une boucle.
    Par jesuismoi dans le forum Langage
    Réponses: 2
    Dernier message: 03/07/2007, 14h28
  4. Lien html dans une boucle For(?)
    Par zorba49 dans le forum VBScript
    Réponses: 6
    Dernier message: 17/05/2006, 15h59
  5. [Vb.net] Indexé un objet crée dans une boucle
    Par picpic dans le forum Windows Forms
    Réponses: 10
    Dernier message: 17/12/2003, 14h37

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