Re [php]

Résolu
Bonjour,

J'ai un tableau crée grace a une requete sql dans ce tableau, lors d'un clique dans une case d'un champ "nomclient" sa m'ouvre une liste deroulante je puisse choisir le nom client et sa met en avant tous les ticket ou ce nom client apparait sa met en avant tous les nom client !
ex: je clique sur le lient =>tableau avec une requet simple select:
dans ce tableau dans une case ou l'intitulé est "NomClient" je clique sa m'ouvre une ptite liste deroulant avec tous les nom client : ALf
mairie
..
Je choisi le client, et sa execute une requete qui trie le tableau mais en mettan en premier tous les tickets ou ce client apparait.

Je vois pas du tous comment faire coté code!

merci de votre aide...
Configuration: Windows XP
Internet Explorer 7.0

36 réponses

Résumé de la discussion

Le besoin consiste à afficher dans un tableau alimenté par une requête SQL une liste déroulante sur le champ NomClient, puis à trier les tickets pour mettre en avant ceux du client sélectionné. Des solutions techniques proposées incluent d'obtenir le NomClient via une requête SELECT sur tb_client et de vérifier le retour pour éviter des erreurs d'affichage et des incohérences dans le chargement. Des corrections sont évoquées concernant le formulaire et l'URL, notamment des problèmes liés à un espace dans Principal.php, et l'utilisation d'un formulaire et des noms de champs cohérents. En cas de besoin, plusieurs utilisateurs évoquent la possibilité d'ajouter des filtres par statut ou par nom de ticket pour obtenir une liste triée par tickets appartenant au client.

Bobot (l’IA à votre service)
  1. Contributeur
    Voilà la page lesTickets.php avec la pagination :

    <head>
    <title>Les Tickets</title>
    <link href="styless.css" rel="stylesheet" type="text/css">
    </head>
    <?php require_once('connexion.php'); ?>

    <?php
    if ( isset($_GET['NumeroTicket']) ) {
    $GetNumeroTicket = $_GET['NumeroTicket'];
    } else {
    $GetNumeroTicket = "";
    }

    // On récupère la page courante
    if ( isset($_GET['page0']) ) {
    $page0 = $_GET['page0'];
    } else {
    $page0 = 1;
    }

    // On récupère le filtre sur le nom du client (pour le lien pour la page)
    if ( isset($_GET['ColNomClient']) ) {
    $GetColNomClient = $_GET['ColNomClient'];
    } else {
    $GetColNomClient = "";
    }

    // On récupère le filtre sur le statut (pour le lien pour la page)
    if ( isset($_GET['ColStatut']) ) {
    $GetStatut = $_GET['ColStatut'];
    } else {
    $GetStatut = "";
    }
    ?>
    <?php

    if (isset($_POST['suppression']))
    {
    foreach($_POST as $nom => $val) // Pour chaque valeur venant du formulaire
    {
    "$nom $val<br />";
    if(substr($nom,0,6)=="suppr_") // Si c'est une case à cocher de suppression
    {
    $cle = substr($nom,6); //On enlève "suppr_" du nom de la checkbox, on a donc indexTicket_numeroTicket dans $cle
    $IndexTicket = substr($cle,0,strpos($cle,"_")); // On récupère l'index : du premier caractère jusqu'au caractère avant le "_"
    $temp_pos = strpos($cle,"_")+1;// On calcule la position du premier caractère après le "_"
    $NumeroTicket = substr($cle,$temp_pos);// On récupère les caractères se trouvant après le "_"
    "DELETE FROM tb_ticket WHERE NumeroTicket=$NumeroTicket and IndexTicket=$IndexTicket<br />";
    mysql_query("DELETE FROM tb_ticket WHERE NumeroTicket=$NumeroTicket and IndexTicket='$IndexTicket' "); // Suppression
    }
    }
    }

    echo '<form action="Principal.php" id="form_ColNomClient">';
    echo '<input type="hidden" name="page" value="4" />';
    echo '<input type="hidden" name="page0" value="' . $page0 . '" />';
    echo '<input type="hidden" id="ColNomClient" name="ColNomClient" value="';
    if ( isset($_GET['ColNomClient']) ) echo $_GET['ColNomClient'];
    echo '" />';
    echo '<input type="hidden" id="ColStatut" name="ColStatut" value="';
    if ( isset($_GET['ColStatut']) ) echo $_GET['ColStatut'];
    echo '" />';
    echo '</form>';

    ?>
    <form method="POST" action="?page=4">

    <table border="1"><tr>

    <th>Index ticket</th>
    <th>Numéro du ticket</th>
    <th>Nom du client
    <?php

    echo '<select name="ColNomClient" onchange="document.getElementById(\'ColNomClient\').value = this.value; document.getElementById(\'form_ColNomClient\').submit();">';
    echo '<option value="">Tous</option>';
    $result1 = mysql_query("SELECT distinct(AbregeClient) FROM tb_client,tb_ticket WHERE tb_client.NumeroClient=tb_ticket.NomClient ORDER BY AbregeClient");
    while ( $data1 = mysql_fetch_array($result1) ) {
    echo "<option value='" . $data1['AbregeClient'] ."'";
    if ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] == $data1['AbregeClient']) echo 'selected="selected"';
    echo " >".$data1['AbregeClient'].'</option>';
    }
    echo '</select>';
    ?> </th>
    <th>Date du ticket</th>
    <th>Heure du Ticket</th>
    <th>Nom du Recepteur</th>
    <th>Interlocuteur client</th>
    <th>Sujet du ticket</th>
    <th>Affecté à</th>
    <th>Statut du ticket
    <?php
    echo '<select name="ColStatut" onchange="document.getElementById(\'ColStatut\').value = this.value; document.getElementById(\'form_ColNomClient\').submit();">';
    echo '<option value="">Tous</option>';
    $result2 = mysql_query("SELECT distinct(StatutTicket) FROM tb_ticket");
    while ( $data2 = mysql_fetch_array($result2) ) {
    echo '<option value="' . $data2['StatutTicket'] . '" ';
    if ( isset($_GET['ColStatut']) and $_GET['ColStatut'] == $data2['StatutTicket']) echo 'selected="selected"';
    echo ' >' . $data2['StatutTicket'] . '</option>';
    }
    echo '</select>';
    ?>
    </th>
    <th>Niveau d'urgence</th>
    <th>Reformulation du ticket</th>
    <th>Modifier</th>
    <th>Supprimer</th>

    </tr>

    <?php

    /******************* PLUSIEURS PAGES SI TROP DE DONNEES DANS LE TABLEAU *******************/
    // Variable contenant le nombre de lignes dans le tableau par page
    $NombreDeLignesParPage = 30;

    if ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] != "" and isset($_GET['ColStatut']) and $_GET['ColStatut'] != "" ) {
    $requete_count = "SELECT count(*) as nb_lignes FROM tb_client,tb_ticket WHERE tb_client.NumeroClient=tb_ticket.NomClient AND tb_client.AbregeClient = '" . $_GET['ColNomClient'] . "' AND StatutTicket = '" . $_GET['ColStatut'] . "'";
    } elseif ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] != "" ) {
    $requete_count = "SELECT count(*) as nb_lignes FROM tb_client,tb_ticket WHERE tb_client.NumeroClient=tb_ticket.NomClient AND tb_client.AbregeClient = '" . $_GET['ColNomClient'] . "'";
    } elseif ( isset($_GET['ColStatut']) and $_GET['ColStatut'] != "" ) {
    $requete_count = "SELECT count(*) as nb_lignes FROM tb_ticket WHERE StatutTicket = '" . $_GET['ColStatut'] . "'";
    } else {
    $requete_count = "SELECT count(*) as nb_lignes FROM tb_ticket ORDER BY NumeroTicket DESC";
    }

    // Nombre de lignes :
    $requete_count_executee = mysql_query($requete_count);
    $donnees_count = mysql_fetch_array($requete_count_executee);
    $TotalDesLignes = $donnees_count['nb_lignes'];

    // Calcul du nombre de pages à créer
    $NombreDePages = ceil($TotalDesLignes / $NombreDeLignesParPage);

    // Si on est à la page 3par exemple et qu'on met un filtre et qu'il n'y a qu'une page, on revient à la page 1
    while ( $page0 > $NombreDePages and $page0 > 1 ) {
    //$page = $page - 1;
    $page0--;
    }

    // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
    $PremiereLigneAafficher = ($page0 - 1) * $NombreDeLignesParPage;

    // On initialise les requetes
    if ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] != "" and isset($_GET['ColStatut']) and $_GET['ColStatut'] != "" ) {
    $requete = "SELECT * FROM tb_client,tb_ticket WHERE tb_client.NumeroClient=tb_ticket.NomClient AND tb_client.AbregeClient = '" . $_GET['ColNomClient'] . "' AND StatutTicket = '" . $_GET['ColStatut'] . "'";
    } elseif ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] != "" ) {
    $requete = "SELECT * FROM tb_client,tb_ticket WHERE tb_client.NumeroClient=tb_ticket.NomClient AND tb_client.AbregeClient = '" . $_GET['ColNomClient'] . "'";
    } elseif ( isset($_GET['ColStatut']) and $_GET['ColStatut'] != "" ) {
    $requete = "SELECT * FROM tb_ticket WHERE StatutTicket = '" . $_GET['ColStatut'] . "'";
    } else {
    $requete = "SELECT * FROM tb_ticket ORDER BY NumeroTicket DESC";
    }

    // On ajoute la limite pour l'affichage
    $requete .= " LIMIT " . $PremiereLigneAafficher . ", " . $NombreDeLignesParPage;

    // On execute la requete
    $retour = mysql_query($requete);

    while ($donnees = mysql_fetch_array($retour)){// On fait une boucle pour lister les résultats
    $retour2 = mysql_query("SELECT AbregeClient FROM tb_client WHERE tb_client.NumeroClient = '" .$donnees['NomClient']."'");
    $data = mysql_fetch_assoc($retour2);
    $AbregeClient= $data['AbregeClient'];

    ?>

    <tr>

    <td><?php echo $donnees['IndexTicket']; ?></td>
    <td><?php echo $donnees['NumeroTicket']; ?></td>
    <td><?php echo $AbregeClient;?></td>
    <td><?php echo $donnees['DateTicket']; ?></td>
    <td><?php echo $donnees['HeureTicket']; ?></td>
    <td><?php echo $donnees['RecepteurTicket']; ?></td>
    <td><?php echo $donnees['InterlocuteurClient']; ?></td>
    <td><?php echo $donnees['SujetTicket']; ?></td>
    <td><?php echo $donnees['AffectationTicket']; ?></td>
    <td><?php echo $donnees['StatutTicket']; ?></td>
    <td><?php echo $donnees['NiveauUrgence']; ?></td>
    <td><?php echo $donnees['ObjetTicket']; ?></td>
    <td><a href="?page=5&ticket=<?php echo $donnees['IndexTicket'];?>&NumeroTicket=<?php echo $donnees['NumeroTicket']; ?>">Modifier</a></td>
    <?php
    echo "<td><input type='checkbox' name='suppr_".$donnees["IndexTicket"]."_".$donnees["NumeroTicket"]."'/></td>";
    ?>
    <?php
    } // Fin de la boucle
    ?>

    </tr>
    </table>
    <?php
    echo '<br><div align="center"> Page : ';
    // On affiche les liens vers les pages
    for ($i = 1 ; $i <= $NombreDePages ; $i++) {
    // Si c'est la page sélectionnée : on l'affiche différement (à modifier dans le CSS)
    if ($page0 == $i) {
    echo '<span class="current_page"><a href="Principal.php?page=4&page0=' . $i . '&ColNomClient=' . $GetColNomClient . '&statut=' . $GetColStatut . '">' . $i . '</a></span> ';
    // Si ce n'est pas la page sélectionné
    } else {
    echo '<a href="Principal.php?page=4&page0=' . $i . '&ColNomClient=' . $GetColNomClient . '&statut=' . $GetColStatut . '">' . $i . '</a> ';
    }
    }
    echo '</div>';
    ?>

    <P align=left></p>

    <center><input name="suppression" type=submit value="Supprimer"></center><br><br>
    </form>
    <p align="center"><a href="index.php?erreur=logout"><strong>Vous déconnecter</strong></a></p>
    1. Contributeur
      Voilà le NouveauTicket.php :

      <html>
      <head>
      <title>Création d'un ticket</title>
      <link href="styless.css" rel="stylesheet" type="text/css">
      </head>
      <?php
      include("connexion.php");
      ?>
      <?php

      session_start(); // On relaye la session
      if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?)
      // ici les éventuelles actions en cas de réussite de la connexion
      }
      else {
      header("Location:index.php?erreur=intru"); // redirection en cas d'echec
      }
      ?>

      <?php
      function dateFr($date) {
      if ( $date != "0000-00-00" ) {
      // On découpe la date selon les "-"
      $dates = explode("-", $date);
      // On replace les jours, mois et années dans le bon ordre en ajoutant des "/" entre chaque
      $dateFr = $dates[2] . "/" . $dates[1] . "/" . $dates[0];
      } else {
      $dateFr = "";
      }
      return $dateFr;
      }
      ?>
      <?php
      $date = date('d/m/Y');
      $heure = date('H:i:s');
      ?>
      <center>
      <h2>Creation d'un nouveau ticket</h2>
      <form action="?page=11" method="POST" id="form_nouveau_client">
      <fieldset id="fieldset_creation_ticket" style="width: 700px;">
      <legend><h4>Création d'un nouveau ticket</h4></legend>
      <table>
      <tr>
      <td align="right">Nom du client : </td>
      <td><select id="NomClient" name="NomClient" onchange="location.href = 'Principal.php?page=2&NomClient=' + this.value;">
      <option value="">Sélectionnez un client</option>
      <?php
      if ( isset($_GET['NomClient']) ) {
      $GetNomClient = $_GET['NomClient'];
      } else {
      $GetNomClient = "";
      }
      $SQL = "SELECT * FROM tb_client";
      $res = mysql_query($SQL);
      while($NomClient=mysql_fetch_array($res)) {
      echo "<option value='" . $NomClient['NumeroClient'] ."'";
      if ($GetNomClient == $NomClient['NumeroClient']) echo 'selected="selected"';
      echo " >".$NomClient["AbregeClient"]."</option>";
      }?>

      </select>
      </td>
      </tr>
      <tr>
      <td align="right">Interlocuteur du client : </td>
      <td><select id="InterlocuteurClient" name="InterlocuteurClient">

      <?php
      if ( isset($_GET['NomClient'] ) and $_GET['NomClient'] != "" ) {
      $SQL = "SELECT * FROM tb_interlocuteur WHERE NumeroClient ='" . $_GET['NomClient'] . "'";
      $res = mysql_query($SQL);
      while($NomInterlocuteur=mysql_fetch_array($res)) {
      echo "<option value='" . $NomInterlocuteur['NomInterlocuteur'] ."'>".$NomInterlocuteur["NomInterlocuteur"]."</option>";
      }
      } else {
      echo '<option value="">Sélectionner un client</option>';
      }
      ?>
      </select>
      <td>
      </tr>
      <tr>
      <td align="right">Date du ticket : </td>
      <td><input type="text" id="DateTicket" name="DateTicket" value="<?php echo $date; ?>"/></td>
      </tr>
      <tr>
      <td align="right">Heure du ticket :</td>
      <td><input type="text" id="HeureTicket" name="HeureTicket" value="<?php echo $heure; ?>"/></td>
      </tr>
      <tr>
      <td align="right">Nom du récepteur : </td>
      <td><select type="text" id="RecepteurTicket" name="RecepteurTicket" value="<?php echo $_SESSION['TrigrammeOperateur']; ?>">
      <?php
      include ("connexion.php");
      $SQL = "SELECT TrigrammeOperateur FROM tb_operateur";
      $res = mysql_query($SQL);
      while($AffectationTicket=mysql_fetch_array($res)) {
      echo "<option>".$AffectationTicket["TrigrammeOperateur"]."</option>\n";}?>
      </select>
      </td>
      </tr>
      <tr>
      <td align="right">Sujet du ticket : </td>
      <td><textarea id="SujetTicket" name="SujetTicket" cols="30" rows="4"></textarea></td>
      </tr>
      <tr>
      <td align="right">Affecté à :</td>
      <td><select type="text" id="AffectationTicket" name="AffectationTicket">
      <?php
      include ("connexion.php");
      $SQL = "SELECT TrigrammeOperateur FROM tb_operateur";
      $res = mysql_query($SQL);
      while($AffectationTicket=mysql_fetch_array($res)) {
      echo "<option>".$AffectationTicket["TrigrammeOperateur"]."</option>\n";}?>
      </select>
      </td>
      </tr>

      <td colspan="2" align="center"><input type="button" value="Créer le ticket" onclick="verif_client();" /><br><br><br>
      <td align="center"><input name="reset" type=reset value="Effacer le formulaire"/>

      </table>
      </fieldset>
      </form>
      </center>
      <?php
      if(isset($_POST['SujetTicket'])){
      $SujetTicket = nl2br($_POST['SujetTicket']); // met des <br /> a chaque retour chariot
      echo $SujetTicket; //affiche le texte
      }
      else{
      }
      ?>

      <p align="center"><a href="index.php?erreur=logout"><strong>Vous déconnecter</strong></a></p>

      <script language="javascript">
      var ta = document.getElementById("SujetTicket");
      ta.onmouseleave = ta.onkeydown=function(){
      if(this.value.length>250){
      alert("Attention 250 cacactères maxi");
      }
      }
      ta.onchange=function(){
      if(this.value.length>250){
      alert("le texte va être ramené à 250 caractères");
      this.value = this.value.substring(0,250);
      }
      }

      function verif_client() {
      if ( document.getElementById('NomClient').value == "" ) {
      alert('Vous devez choisir un client !');
      } else {
      document.getElementById('form_nouveau_client').submit();
      }
      }
      </script>
      1. ok donc c cette rekete ki plane...

        Ta réussi ou pas ??
        1. oui presque mais j'ai un petit probleme chaque ticket(representant une ligne pour un ticket) son multiplié par 10 lol ....
      2. Ben ca a l'aire correct.. C bizare !!

        Ca tafiche kune seule ligne ??

        remplace ca '" .$donnees['NomClient']."'"; par '$donnees['NomClient']'

        peut etre la syntaxe est pas bonne, sinon au pir enleve un cou ta requete là :
        <?php $result_ValueNumeroClient = "SELECT AbregeClient FROM tb_client WHERE tb_client.NumeroClient = '" .$donnees['NomClient']."'"; 
        $retour = mysql_query($result_ValueNumeroClient); 
        $data = mysql_fetch_assoc($retour); 
        
        $AbregeClient= $data['AbregeClient']; 


        Et regarde si ca marche ou pas, si ca marche ca veu dire que c la requete qui fait buggué..

        1. oué quand jenleve sa :

          <?php //$result_ValueNumeroClient = "SELECT AbregeClient FROM tb_client WHERE tb_client.NumeroClient = '" .$donnees['NomClient']."'";
          //$retour = mysql_query($result_ValueNumeroClient);
          //$data = mysql_fetch_assoc($retour);

          //$AbregeClient= $data['AbregeClient'];

          ?>

          et que je remplace

          echo $AbregeClient
          par echo $donnees['NomClient']

          tous les ticket m'affiche bien ....
      3. Ben en faite il faut ke la requete qu'on vien de faire, tu la mettes dans la boucle de la requete * ... Tu comprends ?? si tu ne comprends pas redonne moi tout le code complet avec le formulaire en entier et tte les requete et les boucle, je texplik ;)

        1. j'ai testé mais je dois me trompé

          j'espere que tu comprendra le code bref car il a y a le trie dont je te parlé lotre jour

          <head> 
          <title>Les Tickets</title> 
          <link href="styless.css" rel="stylesheet" type="text/css"> 
          </head> 
          <?php require_once('connexion.php'); ?> 
          
          <?php 
          if ( isset($_GET['NumeroTicket']) ) { 
          $GetNumeroTicket = $_GET['NumeroTicket']; 
          } else { 
          $GetNumeroTicket = ""; 
          } 
          ?> 
          <?php 
          
          if (isset($_POST['suppression'])) 
          { 
          foreach($_POST as $nom => $val) // Pour chaque valeur venant du formulaire 
          { 
          "$nom $val<br />"; 
          if(substr($nom,0,6)=="suppr_") // Si c'est une case à cocher de suppression 
          { 
          $cle = substr($nom,6); //On enlève "suppr_" du nom de la checkbox, on a donc indexTicket_numeroTicket dans $cle 
          $IndexTicket = substr($cle,0,strpos($cle,"_")); // On récupère l'index : du premier caractère jusqu'au caractère avant le "_" 
          $temp_pos = strpos($cle,"_")+1;// On calcule la position du premier caractère après le "_" 
          $NumeroTicket = substr($cle,$temp_pos);// On récupère les caractères se trouvant après le "_" 
          "DELETE FROM tb_ticket WHERE NumeroTicket=$NumeroTicket and IndexTicket=$IndexTicket<br />"; 
          mysql_query("DELETE FROM tb_ticket WHERE NumeroTicket=$NumeroTicket and IndexTicket='$IndexTicket' "); // Suppression 
          } 
          } 
          } 
          
          echo '<form action="Principal.php" id="form_ColNomClient">'; 
          echo '<input type="hidden" name="page" value="4" />'; 
          echo '<input type="hidden" id="ColNomClient" name="ColNomClient" value="'; 
          if ( isset($_GET['ColNomClient']) ) echo $_GET['ColNomClient']; 
          echo '" />'; 
          echo '<input type="hidden" id="ColStatut" name="ColStatut" value="'; 
          if ( isset($_GET['ColStatut']) ) echo $_GET['ColStatut']; 
          echo '" />'; 
          echo '</form>'; 
          
          ?> 
          <form method="POST" action="?page=4"> 
          
          
          <table border="1"><tr> 
          
          <th>Index ticket</th> 
          <th>Numéro du ticket</th> 
          <th>Nom du client 
          <?php 
          
          echo '<select name="ColNomClient" onchange="document.getElementById(\'ColNomClient\').value = this.value; document.getElementById(\'form_ColNomClient\').submit();">'; 
          echo '<option value="">Tous</option>'; 
          $result1 = mysql_query("SELECT distinct(NomClient) FROM tb_ticket"); 
          while ( $data1 = mysql_fetch_array($result1) ) {
          echo "<option value='" . $data1['NomClient'] ."'"; 
          if ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] == $data1['NomClient']) echo 'selected="selected"'; 
          echo " >".$data1['NomClient'].'</option>'; 
          } 
          echo '</select>';
          ?> </th> 
          <th>Date&nbsp;du&nbsp;ticket</th> 
          <th>Heure du Ticket</th> 
          <th>Nom du Recepteur</th> 
          <th>Interlocuteur client</th> 
          <th>Sujet&nbsp;du&nbsp;ticket</th> 
          <th>Affecté à</th> 
          <th>Statut du ticket 
          <?php 
          echo '<select name="ColStatut" onchange="document.getElementById(\'ColStatut\').value = this.value; document.getElementById(\'form_ColNomClient\').submit();">'; 
          echo '<option value="">Tous</option>'; 
          $result2 = mysql_query("SELECT distinct(StatutTicket) FROM tb_ticket"); 
          while ( $data2 = mysql_fetch_array($result2) ) { 
          echo '<option value="' . $data2['StatutTicket'] . '" '; 
          if ( isset($_GET['ColStatut']) and $_GET['ColStatut'] == $data2['StatutTicket']) echo 'selected="selected"'; 
          echo ' >' . $data2['StatutTicket'] . '</option>'; 
          } 
          echo '</select>'; 
          ?> 
          </th> 
          <th>Niveau d'urgence</th> 
          <th>Reformulation du ticket</th> 
          <th>Modifier</th> 
          <th>Supprimer</th> 
          
          </tr> 
          
          
          
          
          <?php 
          if ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] != "" and isset($_GET['ColStatut']) and $_GET['ColStatut'] != "" ) { 
          $requete = "SELECT * FROM tb_ticket WHERE NomClient = '" . $_GET['ColNomClient'] . "' AND StatutTicket = '" . $_GET['ColStatut'] . "'"; 
          $retour = mysql_query($requete); 
          } elseif ( isset($_GET['ColNomClient']) and $_GET['ColNomClient'] != "" ) { 
          $requete = "SELECT * FROM tb_ticket WHERE NomClient = '" . $_GET['ColNomClient'] . "'"; 
          $retour = mysql_query($requete); 
          } elseif ( isset($_GET['ColStatut']) and $_GET['ColStatut'] != "" ) { 
          $requete = "SELECT * FROM tb_ticket WHERE StatutTicket = '" . $_GET['ColStatut'] . "'"; 
          $retour = mysql_query($requete); 
          } else { 
          $retour = mysql_query('SELECT * FROM tb_ticket ORDER BY NumeroTicket DESC'); 
          } 
          while ($donnees = mysql_fetch_array($retour)) { // On fait une boucle pour lister les résultats 
          
          ?>
          
           
          <tr>
          <?php $result_ValueNumeroClient = "SELECT AbregeClient FROM tb_client WHERE tb_client.NumeroClient = '" .$donnees['NomClient']."'"; 
          $retour = mysql_query($result_ValueNumeroClient); 
          $data = mysql_fetch_assoc($retour); 
          
          $AbregeClient= $data['AbregeClient']; 
          
          ?>
          <td><?php echo $donnees['IndexTicket']; ?></td> 
          <td><?php echo $donnees['NumeroTicket']; ?></td> 
          <td><?php echo $AbregeClient;?></td> 
          <td><?php echo $donnees['DateTicket']; ?></td> 
          <td><?php echo $donnees['HeureTicket']; ?></td> 
          <td><?php echo $donnees['RecepteurTicket']; ?></td> 
          <td><?php echo $donnees['InterlocuteurClient']; ?></td> 
          <td><?php echo $donnees['SujetTicket']; ?></td> 
          <td><?php echo $donnees['AffectationTicket']; ?></td> 
          <td><?php echo $donnees['StatutTicket']; ?></td> 
          <td><?php echo $donnees['NiveauUrgence']; ?></td> 
          <td><?php echo $donnees['ObjetTicket']; ?></td> 
          <td><a href="?page=5&ticket=<?php echo $donnees['IndexTicket'];?>&NumeroTicket=<?php echo $donnees['NumeroTicket']; ?>">Modifier</a></td> 
          <?php 
          echo "<td><input type='checkbox' name='suppr_".$donnees["IndexTicket"]."_".$donnees["NumeroTicket"]."'/></td>"; 
          ?>  
          <?php 
          } // Fin de la boucle 
          ?> 
          
          </tr> 
          </table>
          
          <P align=left></p> 
          
          <center><input name="suppression" type=submit value="Supprimer"></center><br><br> 
          </form> 
          <p align="center"><a href="index.php?erreur=logout"><strong>Vous déconnecter</strong></a></p> 
          
      4. Ben ta fais une boucle while ????

        1. pour la requete qu'on vien de faire non mai la select * oui
      5. echo $NomClient; te retourne bien le nom du client kil faut ???

        Si oui ben fai ca

        <td><?php echo $donnees['IndexTicket']; ?></td>
        <td><?php echo $donnees['NumeroTicket']; ?></td>
        <td><?php echo $NomClient; ?></td>
        <td><?php echo $donnees['DateTicket']; ?></td>
        <td><?php echo $donnees['HeureTicket']; ?></td>
        <td><?php echo $donnees['RecepteurTicket']; ?></td>
        <td><?php echo $donnees['InterlocuteurClient']; ?></td>
        <td><?php echo $donnees['SujetTicket']; ?></td>
        <td><?php echo $donnees['AffectationTicket']; ?></td>
        <td><?php echo $donnees['StatutTicket']; ?></td>
        <td><?php echo $donnees['NiveauUrgence']; ?></td>
        <td><?php echo $donnees['ObjetTicket']; ?></td>
        <td><a href="?page=5&ticket=<?php echo
        1. Oui c'est bien sa maintenan j'ai qu'une ligne dans mon tableau alors que dans ma bdd dans la table ticket il y a au moin 10 enregistrement.

          Il me prend en compte la requete qu'on vien de tapé plus la requet select * from tb_ ticket
      6. $result_ValueNumeroClient = "SELECT NomClient FROM tb_client WHERE tb_client.NumeroClient = ' $donnees['NomClient']'";
        $retour = mysql_query($result_ValueNumeroClient);
        $data = mysql_fetch_assoc($retour);

        $NomClient= $data['NomClient'];
        echo $NomClient;

        Regarde déja si ca te retourne bien la valeur..Essaye ca ...
        1. Enfette sa me retourne bien la valeur mais pas dans le champ nom client du tableau sa me le retourne
          a l'exterieur du tableau.
        2. @s_sniperet sa m'affiche qu'un ticket sa fait un trie on dirait ....
          moi je veux que tous les ticket s'affiche ....
          merci vins pour ton aide
      7. Ah ben c simple, montre moi la requete un cou là .. C bon jpense avoir compri lool

        1. okok lol sa fait plaisir alors :

          moi j'ai fais sa :

          <?php
          $result_ValueNumeroClient = "SELECT NomClient FROM tb_client WHERE tb_client.NumeroClient = '" . $donnees['NomClient'] . "'";
          $retour = mysql_query($result_ValueNumeroClient);
          ?>
          <td><?php echo $donnees['IndexTicket']; ?></td>
          <td><?php echo $donnees['NumeroTicket']; ?></td>
          <td><?php echo $donnees['NomClient']; ?></td>
          ....... etcc
        2. tu ten sor vins ?
      8. C bizare ca blok, jarive pas a inséré dans wamp ..

        Bon sinon dis moi a la main vite fé le MLD concernant les deux tables kon a besoin ...

        Donc je récapitule, tu créer un enregistrement et ca insert les données dans la tables ticket...

        Et toi tu le le nom du client pour lekel ce ticket apartient c ca ??

        Toi tu as un numéro de ticket et tu cherche son clien c ca ??
        1. T'est bien parti

          c'est pas compliqué lol !!!!

          j'enregistre un ticket sa insert dans la base de donnée.
          Dans le champ nom client dans la base donnée c'est le NUMERO CLIENT qui s'insere donc la c'est bon.

          Sachant que c'est le numero client qui s'insere, dans mon tableau de mon site qui fait une requete de cette table va allé cherché le numero du client et va affiché le numero du client dans les champ nom client.

          Moi je souhaite qu'il m'enregistre le numero du client dans la bdd dans la table ticket dans le champ nom client.

          MAIS QUE DANS L'Affichage il y est le nom du client qui correspond a son numero enrengistré, qui s'affiche.

          La je peux pas etres plus clair... lol
      9. Ah ok c la requete qui te pose probleme .. Ben euh ... Donne moi un cou ta base de données... File moi le code que je rente sous wamp...

        1. de koi ? tu ve le script de toute ma base de donnée j pas compri lol
      10. Ah ok donc pr bien comprendre ton probleme, dans ton tableau tu as deu foi le champs NuméroClient c ca ??,et donc ta deu foi la mm valeur c ca ???

        1. non lol :

          Dans mon tableau, dans le champ nom client c'est le numero client qui s'affiche car lors de l'enregistrement d'un ticket c le numero client qui est enregistré.
          Et moi je souhaite que sa soit le numero client qui s'enregistre dans la table ticket de la bdd mais qu'Au niveau affichage de mon tableau de mon site sa soit le NOM client qui s'affiche tous simplement
          donc fodrait faire une requete qui di :

          " afficher le nom du client de la table client ou le numero client de la table tickets est égal au numero client de la table client"
      11. Ah envoi moi le tableau complet stp llooooll !!!

        Et toi tu me dit qu'au lieu d'avoir ca : <td><?php echo $donnees['NomClient']; ?></td>
        Tu as ca : <td><?php echo $donnees['NumeroClient']; ?></td>

        C bien ca ??
        1. Enfette la les echo $nomclient c'est juste des recuperation de ce qu'on enregistre dans le form du lien "nouveau ticket" il prend en compte le numero clien"

          mais oui c'est en grosn, ce que tu dis!

          <form method="POST" action="?page=4">
          <table border="1"><tr>
          <th>Index ticket</th>
          <th>Numéro du ticket</th>
          <th>Nom du client</th>
          <th>Date&nbsp;du&nbsp;ticket</th>
          <th>Heure du Ticket</th>
          <th>Nom du Recepteur</th>
          <th>Interlocuteur client</th>
          <th>Sujet du ticket</th>
          <th>Affecté à</th>
          <th>Statut du ticket</th>
          <th>Niveau d'urgence</th>
          <th>Reformulation du ticket</th>
          <th>Modifier</th>
          <th>Supprimer</th>
          
          </tr>
          
          
          <?php
          $retour = mysql_query('SELECT * FROM tb_ticket ORDER BY NumeroTicket ASC');
          while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les résultats
          
          {
          ?>
          
          <tr>
          
          <td><?php echo $donnees['IndexTicket']; ?></td>
          <td><?php echo $donnees['NumeroTicket']; ?></td>
          <td><?php echo $donnees['NomClient']; ?></td>
          <td><?php echo $donnees['DateTicket']; ?></td>
          <td><?php echo $donnees['HeureTicket']; ?></td>
          <td><?php echo $donnees['RecepteurTicket']; ?></td>
          <td><?php echo $donnees['InterlocuteurClient']; ?></td>
          <td><?php echo $donnees['SujetTicket']; ?></td>
          <td><?php echo $donnees['AffectationTicket']; ?></td>
          <td><?php echo $donnees['StatutTicket']; ?></td>
          <td><?php echo $donnees['NiveauUrgence']; ?></td>
          <td><?php echo $donnees['ObjetTicket']; ?></td>
          <td><a href="?page=5&ticket=<?php echo $donnees['IndexTicket'];?>&NumeroTicket=<?php echo $donnees['NumeroTicket']; ?>">Modifier</a></td> 
          
          
          <?php
          echo "<td><input type='checkbox' name='suppr_".$donnees["IndexTicket"]."_".$donnees["NumeroTicket"]."'/></td>";
          ?>
          
          
          <?php
          } // Fin de la boucle
          ?>
          
          </table>
      12. Mmmmh mouais je vois, ben déja tu peux me montrer ton tableau, et il me semble kil y a une petite érreur dans ta requete non ??? c pluto pas : $donnees['NumeroClient']..

        1. non c'est bien un champ appelé nom client ou le nom client doit etre affiché mais sachant que lors de l'envoie d'une nouvelle requete c'est le numero du client qui est envoyé dans la table tickets et que le lien tickets n'est qu'une requete sql de la table ticket c normal qui m'affiche le numero client.

          <td><?php echo $donnees['IndexTicket']; ?></td>
          <td><?php echo $donnees['NumeroTicket']; ?></td>
          <td><?php echo $donnees['NomClient']; ?></td>
          <td><?php echo $donnees['DateTicket']; ?></td>
          <td><?php echo $donnees['HeureTicket']; ?></td>
          <td><?php echo $donnees['RecepteurTicket']; ?></td>
          <td><?php echo $donnees['InterlocuteurClient']; ?></td>
          <td><?php echo $donnees['SujetTicket']; ?></td>
          <td><?php echo $donnees['AffectationTicket']; ?></td>
          <td><?php echo $donnees['StatutTicket']; ?></td>
          <td><?php echo $donnees['NiveauUrgence']; ?></td>
          <td><?php echo $donnees['ObjetTicket']; ?></td>
      13. Yeep sniper un souci ???

        1. oué oué je bloque sur un trucs

          Enfette dans mon tableau(qui est une requete select * de ma table tickets) dans le champ nom client c'est le numero client qui s'affiche, moi je souhaite que sa soit le nom client c'est plu parlant.
          mais que dans l'enregistrement d'un nouveau ticket je souhaite que sa soit le numero du client qui s'enregistre dans la base de donnée. mais que dans l'affichage c'est le nom du client tu comprend.

          j'ai fait sa : sa marche avec plein de bug une ligne sur 2 et sa m'affiche pas tous les ticket qui a dans ma table ticket
          $result_ValueNumeroClient = "SELECT NomClient FROM tb_client WHERE tb_client.NumeroClient = '" . $donnees['NomClient'] . "'";
          $retour = mysql_query($result_ValueNumeroClient); 


          J'espere que tu vois ce que je veux dire vins!! mercii
      14. Contributeur
        Bah oui dans ta table tb_ticket, le NumeroClient n'existe pas, seul le NomClient existe!

        Si tu veux le NumeroClient il faut que tu fasses, à la place de la requete :
        $result_ValueNomClient = mysql_query("SELECT NomClient FROM tb_client WHERE NumeroClient = '" . $donnees['NumeroClient'] . "'");

        la requete :

        $result_ValueNumeroClient = mysql_query("SELECT NumeroClient FROM tb_client WHERE NomClient = '" . $donnees['NomClient'] . "'");

        Après je ne sais pas ce que tu veux en faire de ce $ValueNumeroClient.

        Etant donné qu'il n'existe pas dans la table tb_ticket, ça ne va pas te servir à grand chose ...
        Désolé mais là je suis en vacances dans 1/2h alors je suis un peu à l'Ouest! :s

        Je vais essayer de faire un tour sur CCM lundi ou mardi mais le reste de la semaine ça sera difficile :s

        Sinon, tu as mon adresse msn donc si tu peux tu viendras sur msn si jamais tu as besoin d'aide.
        Si je suis pas là, tu peux envoyer un mail ^^
        1. okok

          MERCI BEAUCOUP

          bonne vacance ...
      15. Contributeur
        Oui donc

        <?php
        $result_ValueNomClient = mysql_query("SELECT NomClient FROM tb_client WHERE NumeroClient = '" . $donnees['NumeroClient'] . "'");
        $data_ValueNomClient = mysql_fetch_array($result_ValueNomClient);
        $ValueNomClient = $data_ValueNomClient['NomClient'];
        ?>

        <td><?php echo $donnees['IndexTicket']; ?></td>
        <td><?php echo $donnees['NumeroTicket']; ?></td>
        <td><?php echo $ValueNomClient; ?></td>
        <td><?php echo $donnees['DateTicket']; ?></td>
        <td><?php echo $donnees['HeureTicket']; ?></td>
        <td><?php echo $donnees['RecepteurTicket']; ?></td>
        <td><?php echo $donnees['InterlocuteurClient']; ?></td>
        <td><?php echo $donnees['SujetTicket']; ?></td>
        <td><?php echo $donnees['AffectationTicket']; ?></td>
        <td><?php echo $donnees['StatutTicket']; ?></td>
        <td><?php echo $donnees['NiveauUrgence']; ?></td>
        <td><?php echo $donnees['ObjetTicket']; ?></td>

        Ca fait pas ce que tu veux?
        1. Non malheuresement,

          Le nom client ne s'affiche plus : et message d'erreur

          Notice: Undefined index: NumeroClient in F:\Program Files\wamp\www\test\pages\LesTickets.php on line 111

          sa fait depuis ce matin que je galere avec sa!!! lol
      16. Contributeur
        Ben s'il y est pas, pourquoi tu le veux?
        1. lol ta pa du cerné mon trucs :

          Enfette dans la page ticket.php dans le tableau On a dans le champ "NOMCLIENT" Le "NUMERODUCLIENT" qui s'affiche t'est dacord?
          Mais Ce que je souhaite s'est que dans ce champ NOMCLIENT c'est Le NomCLIENT qui s'affiche et non pas le NumeroCLIENT.

          Cependant je souhaite aussi que DANS LA BASE DE DONNEE, ca soit Le numero CLient et non pas le NOMCLIENT.
          (comme sa l'est bien maintenan).

          Voila la tu devrai comprendre .

          Enfette je souhaite que sa reste comme sa o niveau de la base de donnée o nom client s'est bien (1, 2 5 etcc) qui s'enregistre mais que dans le NomClient dans la page les tickets.php, dans l'affichage sa soit ALF Armony etcccc qui se mette.

          Ta compris ?
      • 1
      • 2