Boucle disparait selon le navigateur

Fermé
bakiraKiri Messages postés 14 Date d'inscription vendredi 12 janvier 2018 Statut Membre Dernière intervention 13 janvier 2018 - 12 janv. 2018 à 10:25
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 13 janv. 2018 à 11:33
Bonjour,

J'ai un problème avec une boucle que j'ai créé.

Le résultats s'affiche bien avec le navigateur Firefox mais disparaît lorsque que je fais un contrôle avec Chrome et Safari.

Je bloque sur la provenance du problème.

Quelqu'un aurait une idée?

Merci d'avance
A voir également:

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
12 janv. 2018 à 10:55
Bonjour,

Boucle qui génère du html ?
Le souci est très certainement que ton code html est mal formaté ... (des balises mal fermées par exemple...)
Tu dois pouvoir t'en rendre compte si tu regardes le code source "généré" de ta page.


0
bakiraKiri Messages postés 14 Date d'inscription vendredi 12 janvier 2018 Statut Membre Dernière intervention 13 janvier 2018 1
Modifié le 12 janv. 2018 à 11:55
Merci pour ta réponse.

Effectivement la boucle génère du html mais tout me semble correct. Néanmoins je te glisse ci-dessous la boucle.
<?php foreach ($posts as $post): ?>
        <tr>
              <td><?php echo $post['Category']['name']; ?></td>
              <td><?php echo $post['Post']['title']; ?></td>
              <td><?php echo $post['Post']['modified']; ?></td>
              <td><?php echo $this->Html->link(__(''), array('action' => 'edit', $post['Post']['id']), array('class' => 'mdi-content-create')); ?></td>
                                <td><?php echo $this->Form->postLink(__(''), array('action' => 'delete', $post['Post']['id']), array('class' => 'mdi-action-delete'), __('Are you sure you want to delete # %s?', $post['Post']['title'])); ?>
</td>
                            </tr>
                        <?php endforeach; ?>


EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
12 janv. 2018 à 11:56
Tu as regardé le code généré dans ton navigateur ?
Tu le compares avec le code généré dans un navigateur avec lequel ça marche...
0
bakiraKiri Messages postés 14 Date d'inscription vendredi 12 janvier 2018 Statut Membre Dernière intervention 13 janvier 2018 1
12 janv. 2018 à 12:41
Oui et tout le code se trouvant dans la boucle n'est pas généré. C'est la seule différence
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > bakiraKiri Messages postés 14 Date d'inscription vendredi 12 janvier 2018 Statut Membre Dernière intervention 13 janvier 2018
12 janv. 2018 à 12:49
Tu pourrais nous montrer les deux qu'on puisse nous même le voir ??

Car là comme ça.. le code PHP étant interprété côté serveur... peu importe le navigateur avec lequel tu vas le voir...
Donc le souci vient du code html (et ou js si tu en as)....
Il nous faut donc le code source généré qui marche.. et celui qui ne fonctionne pas pour les comparer nous même.
0
bakiraKiri Messages postés 14 Date d'inscription vendredi 12 janvier 2018 Statut Membre Dernière intervention 13 janvier 2018 1
Modifié le 13 janv. 2018 à 11:00
Je penses avoir mis la main sur mon problème.

J'ai remarqué avec le debug que ça devait surement provenir de la traduction.

`i18n` AS `I18n__nameTranslation` ON (`Category`.`id` = `I18n__nameTranslation`.`foreign_key` AND `I18n__nameTranslation`.`model` = 'Category' AND `I18n__nameTranslation`.`field` = 'name' AND `I18n__nameTranslation`.`locale` = 'fr_fr') WHERE 1 = 1 LIMIT 20

`i18n` AS `I18n__nameTranslation` ON (`Category`.`id` = `I18n__nameTranslation`.`foreign_key` AND `I18n__nameTranslation`.`model` = 'Category' AND `I18n__nameTranslation`.`field` = 'name' AND `I18n__nameTranslation`.`locale` = 'fra') WHERE 1 = 1 LIMIT 20


La différence est que pour Firefox il récupère la langue locale 'fra' et pour les autre naviguateur il cherche à récupérer la langue locale 'fr_fr'

Le problème viens surement de mon code PHP et je vais voir pour trouver une solution dans ce sens.

Si tu as des suggestions ou remarques je suis preneur.
0