[RESOLU] Problème boucle while

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Problème boucle while

Re: [RESOLU] Problème boucle while

par hakazizi » 02 oct. 2024, 20:51

merci oui se sera beaucoup mieux mais pour le moment j'ai un problème avec l'attribut "srcset" et je suis quasiment à 100% partout.
j'ai parfois l'impression que les voie de pagespeed sont impénétrables.

Re: [RESOLU] Problème boucle while

par or 1 » 02 oct. 2024, 19:29

beaucoup plus simple et surtout sans avoir à éditer un fichier php à chaque ajout de projet :
comparer $projects['name'] et $title

Re: Problème boucle while

par hakazizi » 02 oct. 2024, 19:18

Voilà J'ai fini par trouver une solution provisoire en attendant une solution plus pérenne:
@or1 Je suis désoler de m'être emporter. et merci pour ton aide même si je n'en avait pas l'air j'essayait tout de même de comprendre pourquoi tu insistait.

Code : Tout sélectionner

<?php $i=0; while($projects=mysqli_fetch_array($data_projects)){ if($i===0){ if($title==='projet AFAC974'){ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>' class='current'><?php echo $projects['name']; ?></a></li><?php }else{ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>'><?php echo $projects['name']; ?></a></li><?php } } if($i===1){ if($title==='projet cr&eacute;ation de carte postale'){ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>' class='current'><?php echo $projects['name']; ?></a></li><?php }else{ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>'><?php echo $projects['name']; ?></a></li><?php } } if($i===2){ if($title==='projet Faketory'){ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>' class='current'><?php echo $projects['name']; ?></a></li><?php }else{ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>'><?php echo $projects['name']; ?></a></li><?php } } if($i===3){ if($title==='projet la Rose de l&apos;Orient'){ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>' class='current'><?php echo $projects['name']; ?></a></li><?php }else{ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>'><?php echo $projects['name']; ?></a></li><?php } } if($i===4){ if($title==='projet Robe et V&ecirc;tement'){ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>' class='current'><?php echo $projects['name']; ?></a></li><?php }else{ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>'><?php echo $projects['name']; ?></a></li><?php } } if($i===5){ if($title==='projet THE Wild FORK'){ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>' class='current'><?php echo $projects['name']; ?></a></li><?php }else{ ?> <li><a href='../projects/<?php echo str_replace('.webp','.html',$projects['screen']); ?>'><?php echo $projects['name']; ?></a></li><?php } } $i++; } ?>
dernier édit j'avait fait une jolie indentation pour que le code soit plus lisible mais à l'affichage l'indentation à disparue...

Re: Problème boucle while

par hakazizi » 01 oct. 2024, 12:50

Non j'ai déjà essayé cela ne fonctionne pas donc Sujet loin d'être résolu
Quand ce sera résolu je mettrai la solution comme j'ai l'habitude de le faire....

Re: Problème boucle while

par @rthur » 01 oct. 2024, 10:05

@hakazizi, or1 essaye de t'aider et que tu comprennes par toi même l'origine du problème.

Re: Problème boucle while

par hakazizi » 30 sept. 2024, 11:35

Ça se voit comme le nez au milieu de la figure ce que ça va donner...
J'ai comme l'impression que tu es en train de troller mon sujet, relis le règlement stp

Re: Problème boucle while

par or 1 » 30 sept. 2024, 08:36

non, exécutez ce code en vrai pour vérifier (avec onlinephp.io par exemple).

Re: Problème boucle while

par hakazizi » 30 sept. 2024, 08:31

Le principe je le connais
0
1
2
Etc.
Mais en quoi cela va m'aider à trouver la solution de mon problème ?
Euh non Parse error en php else et if sont attaché c'est en js qu'il sont séparés...

Re: Problème boucle while

par or 1 » 30 sept. 2024, 08:16

$i = 1;
$j = 0;
while ($j < 10){
 if($i == 1){
  echo '$i vaut 1';
 }
 else if($i == 2){
  echo '$i vaut 2';
 }
$j++;
}
que va afficher ce code ?

Re: Problème boucle while

par hakazizi » 30 sept. 2024, 06:28

Oui ça c'est normal il change en fonction de l'URL pour déclencher le if qui correspond.
Je ne vois pas où tu veux en venir...
Je l'ai mis dans le code du premier message, je charge la variable title au tout début.

Re: Problème boucle while

par or 1 » 29 sept. 2024, 21:50

$title ne change jamais dans la boucle, à l'inverse de $projects['name']

Re: Problème boucle while

par hakazizi » 29 sept. 2024, 21:48

C'est celui qui est affiché je ne l'ai pas changé

Re: Problème boucle while

par or 1 » 29 sept. 2024, 21:21

quel est le nouveau code php ?

Re: Problème boucle while

par hakazizi » 29 sept. 2024, 20:18

Oui je l'ai vérifier j'ai bien title qui ne change pas a chaque itération de la boucle. mais pourtant rien y fait, c'est justement pour cela que je ne comprends pas...
pourquoi je rentre dans tous les elseif alors que dans le principe dès qu'un if est true on est sensé sortir de la condition. et la sois toutes les conditions sont false soit true.
Je n'y comprends plus rien...

Re: Problème boucle while

par or 1 » 29 sept. 2024, 15:50

il y a une seule page project qui peut être la page courante, or tous les li a ont class='current' donc l'algo n'est pas bon.

dans le while, pour chaque entrée, il faut comparer l'url en base de donnée avec l'url de la page courante. pour cela (et afin d'éviter d'avoir à ajouter un projet un bdd et d'avoir à modifier le script php), il faut ajouter un champ pour le nom du fichier dans la table des projets.