Boucle disparait selon le navigateur

bakiraKiri Messages postés 15 Statut Membre -  
jordane45 Messages postés 40050 Statut Modérateur -
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

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 758
 
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 15 Statut Membre 1
 
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 40050 Statut Modérateur 4 758
 
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 15 Statut Membre 1
 
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 40050 Statut Modérateur 4 758 > bakiraKiri Messages postés 15 Statut Membre
 
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 15 Statut Membre 1
 
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