Se connecter avec
S'enregistrer | Connectez-vous

Requette MySQL en php

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

J'avais oublier....

  1. $sql = mysql_query("SELECT `module` FROM `modules."` ORDER BY 'nom' " );
  2. while (list($module) = mysql_fetch_array($sql))
  3. {
  4. $mod = explode("&", $module);
  5.  
  6. if ($save == $mod[0])
  7. {
  8. $aff = $mod[1];
  9. }
  10. else
  11. {
  12. $aff = $mod[0];
  13. }
  14.  
  15. $save = $mod[0];
  16.  
  17. echo "$aff";
  18. }


Et mon probleme est que $mod[1] ne s'affiche pas quand il y a deux $mod[0] qui se suivent...
Ca m'affichera toujours $mod[0]...
Expert Programmation

tout d'abord, si tu fais un list(), utilise plutôt mysql_fetch_row(), il est inutile de faire forcer le cpu.
Ensuite, il vaut mieux mettre une valeur initiale à $save.
tertio, tu ferais mieux d'utiliser la requète que t'a donné Rakipu qui permet d'optimiser un peu ta recherche.
Dernièrement, tu te retrouves avec un tableau ($mod) pouvant contenir des valeurs identiques? array_unique() pourrait t'aider.

Merci beaucoup,
$save est defini a l'exterieur de ma boucle.

Le problème avec la requète de Rakipu, c'est qu'elle ne peut pas fonctionner dans se cas.
J'utilise explode, et les données que contient ma base de donné sont du type:

News&index
News&post
Forum&index
Forum&seek

Je voudrais donc que cet exemple donne:

News
post
Forum
seek

Si vous s'avez comment faire...
Merci

Expert Programmation

ah ok.
Alors la modif est relativement simple.
  1. <?
  2. $sql = mysql_query("SELECT `module` FROM `modules."` ORDER BY 'nom' " );
  3. $total_mod = Array();
  4. while (list($module) = mysql_fetch_row($sql)) {
  5. $mod = explode("&", $module);
  6. foreach ($mod as $curmod) {
  7. $total_mod[] = $curmod; // on ajoute chaque module dans le tableau
  8. }
  9. }
  10. $mods = array_unique($total_mod);
  11. print_r($mods);
  12. ?>

$mods est au final un tableau qui contient la liste des modules sans doublon.
Lassé par la pub ? Créez un compte
Tom's guide dans le monde