Boutons next et previous

Boutons next et previous - PHP - Programmation

Marsh Posté le 05-03-2007 à 16:39:10    

Bonjour,
Dans mon appli, j'ai une liste de champs (que g mis ds un tableau) obtenus grâce à une requête. Quand je clique sur une ligne du tableau, une pop up s'ouvre avec plus de détails que la ligne sélectionnée. J'aimerai pouvoir passer au champ suivant sans devoir fermer la pop up et recliquer sur la ligne suivante.
Ce code ne marche pas, ms je vous le montre au cas où vous y verrez une enorme erreur.

Code :
  1. $nb = 1; 
  2. if (!isset($limit)) $limit = 0; // si on arrive sur la page pour la première fois: limite = 0.
  3.    
  4. $path_parts = pathinfo($_SERVER['PHP_SELF']);
  5. $page = $path_parts['basename'];
  6. $limit=$_GET['limit'];
  7. $select = mysql_query("SELECT count(query_id) FROM Queries where Project_name='$project_name'" );
  8. $row = mysql_fetch_row($select);
  9. //$total= clé primaire
  10. $total = $row[0];
  11. // requête SQL qui ne prend que le nombre d'enregistrements nécessaire à l'affichage.
  12. $select = mysql_query("select distinct Q.query_id, Translator_name, Q.language_name, Query_type,Doc_name, Reference, Proposal, Query_text,Context, Creation_date from Projects P inner join Queries Q on (P.Project_name=Q.Project_name) where P.Password='$project_pwd' and Q.query_id='$query_id' limit '.$limit.','.$nb" );
  13.           while($select and $data = mysql_fetch_array($select)) {
  14.               $author=$data["Translator_name"];
  15.               $language=$data["language_name"];
  16.               $doc_name=$data["Doc_name"]; 
  17.               $query_type=$data["Query_type"];
  18.               $reference=$data["Reference"];
  19.               $proposal=$data["Proposal"];
  20.               $query=$data["Query_text"];
  21.               $date=$data["Creation_date"]; 
  22.               $context=$data["Context"]; 
  23.               $query_id=$data["query_id"];   
  24.           }
  25.                    
  26. $next = $limit + $nb;
  27. $previous = $limit - $nb;
  28. if($limit != 0) {
  29.     echo '<a href="'.$page.'?limit='.$previous.'">Previous</a>';
  30. }
  31. if($next < $total) {
  32.     echo '<a href="'.$page.'?limit='.$next.'">Next</a>';
  33. }


Si vous avez des suggestions ou mieux: une solution: merci!

Reply

Marsh Posté le 05-03-2007 à 16:39:10   

Reply

Marsh Posté le 05-03-2007 à 17:18:23    

Lorsque tu ouvre la popup tu exécute une requéte, ou pas ?
 
Si oui, il te faudra alors recharger le contenu de la popup avec le contenu d'une nouvelle requête., et en fait avoir à peu de chose prés le même code que quand tu ouvre ta popup. (chais pas si chuis clair là).

Reply

Marsh Posté le 05-03-2007 à 17:29:52    

euh...j'ai un peu compris ms pas trop...
Qd j'ouvre ma pop up j'execute une requête oui...
 $query41=mysql_query("select distinct Translator_name, Q.language_name, Query_type,Doc_name, Reference, Proposal, Query_text,Context, Creation_date from Projects P inner join Queries Q on (P.Project_name=Q.Project_name) where P.Password='$project_pwd' and Q.query_id='$query_id'" );
Je sais pas comment passer au champ suivant...il faut que je passe tout en paramètre???

Reply

Marsh Posté le 05-03-2007 à 17:40:34    

ba sur ton popup tu claque 2 boutons qui vont pointer vers les liens de la ligne précédente/suivantes. Et donc tu appels la même page de traitement que celle que tu appel pour ouvrir ton popup, la seule chose c'est qu'il faut que tu indique que tu ne veux pas en rouvrir un de popup.

Reply

Marsh Posté le 05-03-2007 à 17:44:52    

g les 2 boutons qui s'affichent ms je n'arrive pas à passer à la ligne suivante...
Voici le lien pour ouvrir le pop up:

Code :
  1. echo " <a href=\"popup.php?query_id=$query_id\" onclick=\"return !window.open(this.href,null,'width=595,height=690, status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, resizable=yes');\"><font color=\"blue\">Next</font></a>";


Comme tu peux le voir je passe le query_id en paramètre..et avec les bouton next et previous je ne sais pas comment récupérer ces valeurs..


Message édité par acorsa le 05-03-2007 à 17:50:12
Reply

Marsh Posté le 05-03-2007 à 17:55:50    

Code :
  1. $query_suiv=$query_id+1;
  2. echo " <a href=\"popup.php?query_id=$query_suiv\" onclick=\"return !window.open(this.href,null,'width=595,height=690, status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, resizable=yes');\"><font color=\"blue\">Next</font></a>";


le lien vers lequel doit pointer le bouton suivant. (aprés la partie JS je ne peux pas t'aider..)

Reply

Marsh Posté le 05-03-2007 à 17:57:23    

non justement je ne peux pas incrémenter la valuer de query_id car elles ne se suivent pas. Elle peuvent être égale à 1, 3, 45, 23 ...

Reply

Marsh Posté le 05-03-2007 à 18:01:55    

sinon tu vas être obligé de sauvegarder la liste de tes query_id, dans un tableau dans la session, puis tu incrémente l'index de ce tableau avec tes boutons ...

Reply

Marsh Posté le 05-03-2007 à 18:04:35    

oulal la je suis pas certaine de savoir faire ça...

Reply

Marsh Posté le 05-03-2007 à 18:08:32    

ba si tu as déjà fait le reste, ç'est pas la plus compliqué...
tu fais une requête pour récupérer uniquement les query_id dans l'ordre  que tu compte utiliser, que tu limite éventuellement pour n'avoir que les query_id que tu as affiché sur la page. le résultat de cette requête tu le claque dans une variable de session et puis vla...

Reply

Marsh Posté le 05-03-2007 à 18:08:32   

Reply

Marsh Posté le 06-03-2007 à 14:58:37    

Bon je te remercie, je vais faire ça avec un tableau.
Merci pour ton aide!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed