8768 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Firefox ne lit pas mon code PHP... il est le seul à ne pas comprendre mon code, qui fonctionne sur IE, Opera, Google chrome, un code que j'ai débogué avec X-debug, qui donc est un code parfait... mais rien à faire.

J'ai identifié son comportement : dans la connexion PDO $rep=$bdd->query("requete"), il confond le caractère ">" avec la fermeture de mon code PHP et affiche tout ce qui vient ensuite en texte.
Est-ce dû à lui-même ou à mon environnement de développement ? Xampp ?

Merci pour vos réponses.
Modifié par Alvano (01 Feb 2016 - 09:58)
Modérateur
Bonjour,

Le code php s'exécute sur le serveur et pas dans ton navigateur.

Le problème est donc ailleurs.

Le html produit par ton php doit contenir une erreur et firefox doit y être plus sensible que les autres.

Amicalement,
En fait j'ai lu que Xampp pose des problèmes avec Firefox, donc je vais explorer cette voie.
Bonjour,

Relis ce que parsimonhi t'explique, les navigateurs web ne lisent pas de PHP, aucun !

Tu as un serveur web (ici Apache) qui va envoyer du html, et c'est ça que les navigateurs lisent (uniquement).
Alvano a écrit :

dans la connexion PDO $rep=$bdd->query("requete"), il confond le caractère ">" avec la fermeture de mon code PHP et affiche tout ce qui vient ensuite en texte.


Je te rassure, cela n'est pas possible Smiley smile
Il y a une grosse différence entre " ?> " et " -> "
Je suis du même avis que mes camarades t'ayant répondu. L'erreur vient d'ailleurs.
Modifié par JENCAL (15 Jan 2016 - 14:07)
Je viendrai de toute façon vous dire ce que j'ai détecté, ça pourra être utile pour d'autres, pour le moment j'y travaille encore Smiley biggrin
Alvano a écrit :
Je viendrai de toute façon vous dire ce que j'ai détecté, ça pourra être utile pour d'autres, pour le moment j'y travaille encore Smiley biggrin

SI tu envoies ton code php, au moins la partie qui coince, on pourrait peut être t'aider à trouver.
Ce peut être quelque chose de tellement évident que tu ne le vois pas, comme cela m'arrive très souvent à moi même...
Eh bien c'est irrationnel car j'ai testé en mettant ma base de données et mon site en ligne, et là plus d'erreurs. Les erreurs ne survenaient qu'en local, uniquement avec FireFox... et une fois sur deux, c'était pas régulier, même en vidant le cache : ça me rendait fou.

Alors que se passe-t-il entre Xampp et Firefox ? Est-ce que Xampp, a une particularité ?
J'ai un BTS informatique industrielle, je suis à l'aise en codage et en algorithmes, mais faible en réseaux et protocoles (j'espère m'améliorer Smiley smile )

Au final je conseille à ceux qui rencontreraient un problème avec Xampp er Firefox, de tester en réel, pas en local. J'utilisais aussi un port exotique car Windows 10 utilise le 80 et le 8080, donc j'ai choisi le 8078, est-ce que ça peut jouer ? Je ne sais pas. Trop frais encore en informatique. Merci cependant pour votre aide.
Modérateur
Bonjour,

Tu as des erreurs qui trainent et qui vont se manifester chez certains internautes.

As-tu vérifié le html vu par firefox (en faisant ctrl+u sur ton clavier) ? Firefox vérifie la syntaxe de ton html et signale les erreurs dans le code qu'il affiche via cette combinaison de touche.

As-tu vérifier si dans tous les navigateurs arrivait le même code html ou pas ?

As-tu du javascript dans ton code ?

Amicalement,
Modérateur
parsimonhi a écrit :
Bonjour,

Le code php s'exécute sur le serveur et pas dans ton navigateur.

Le problème est donc ailleurs.

Le html produit par ton php doit contenir une erreur et firefox doit y être plus sensible que les autres.

Amicalement,

+1

Mais, il y a de grandes chances que sous GNU/Linux, il n"y ait pas ce problème.
parsimonhi a écrit :
As-tu du javascript dans ton code ?

+1

@Alvano:
utilise la wb dev toolbar pour couper le js et teste ta page. Smiley cligne

Xamp (X étant multi os), oui c'est bien mais wamp, c'est mieux (pour windows bien sûr). Et si tu veux le nec plus ultra, tourne sur GNU/Linux (Lamp) installé en vm avec Docker ou pas ou en multiboot sur ta machine ou en boot direct tout simplement... Smiley cligne

Je soupçonne que ton php.ini soit mal configuré. As tu testé ta requête directement dans ta base de données ? Est ce que PDO est bien configuré ? Les exceptions PDO sont elles biens paramètrées ?
ajoute ceci en haut dans ton code et voit si tu as des messages erreurs en retour.

<?php
error_reporting(E_ALL);
ini_set("display_startup_errors", 1);
ini_set('display_errors', 1);
?>


Au passage, le fondateur de Debian et le co-fondateur de Docker vient de mourir. En ce moment, c'est l’hécatombe.... Les circonstance de sa mort sont bizarre. Je pense qu'on a perdu un grand acteur de l'informatique.
Modifié par niuxe (15 Jan 2016 - 22:19)
J'utilise JQuery, pour afficher les pages dans une Div centrale, la seule div car le reste est en pur HTML 5, avec nav, aside, article, figure, Il y deux fonctions Load.

C'est dans la partie administration que j'avais le plus de problèmes, or là j'utilise effectivement Javascript pour contrôler mes formulaires, car j'avais recréé une section genre phpmyadmin, en mieux.

J'ai débogué mon HTML, en général je travaille sur IE en premier, vu ses caprices, avec son débogueur F12, je valide mes codes avec le W3C. Aucun souci de ce côté là.

Hier je n'en pouvais plus mais je reprends ce matin et je vais vérifier tous mes echo "bla bla"; avec vos conseils et le code de Niuxe, pour être sûr qu'un plantage ne va pas survenir chez les internautes... Merci Smiley smile
Je suis arrivé à une conclusion : Windows 10, ne permet plus de se connecter en tant qu'administrateur... un système payant qui n'autorise pas le droit de l'administrer c'est surréaliste, c'est Windows... Peut-être aussi parce que j'utilise une version familiale.

On pouvait faire apparaître ce compte administrateur avec une manipulation, rendue impossible depuis la dernière mise à jour, mise à jour qui avait fait disparaître mon compte administrateur.

Donc je restais connecté en tant qu'invité et Xampp me prévenait :
you are not running with administrator rights ! This will work for most application stuff but whenever you do something with services there will be a security dialogue or things will break! So think
about running this application with administrator rights!


Cette différence en local et en ligne, exclusivement pour Firefox, vient à mon avis de Windows 10 et de mes droits.
Modifié par Alvano (25 Jan 2016 - 10:13)
Alvano a écrit :
Je suis arrivé à une conclusion : Windows 10, ne permet plus de se connecter en tant qu'administrateur... un système payant qui n'autorise pas le droit de l'administrer c'est surréaliste, c'est Windows... Peut-être aussi parce que j'utilise une version familiale.

On pouvait faire apparaître ce compte administrateur avec une manipulation, rendue impossible depuis la dernière mise à jour, mise à jour qui avait fait disparaître mon compte administrateur.

Donc je restais connecté en tant qu'invité et Xampp me prévenait :
you are not running with administrator rights ! This will work for most application stuff but whenever you do something with services there will be a security dialogue or things will break! So think
about running this application with administrator rights!


Cette différence en local et en ligne, exclusivement pour Firefox, vient à mon avis de Windows 10 et de mes droits.


Bonjour Alvano,

Tes conclusions me laissent dubitatif. Je travaille actuellement sur Windows 10 et Xamp et je ne relève aucun problème sur l'interprétation du code coté serveur (d'ailleurs je n'y vois pas fort bien le rapport) que ce soit avec Firefox ou tout autre, qu'il soit récent où d'Avant Guerre. Qui plus est j'utilise aussi le port 80 afin d'enfoncer le clou.
Je ne suis pas non plus connecté en tant qu'Administrateur (enfin au sens où tu l'entends). En effet, sur Windows 10, même l'admin a des droits "limités" et les applis ne se lancent pas forcément avec ces droits là (quand une élévation de droit est requise, Windows demande confirmation par une boite de dialogue). Dans mon cas Xamp, que je fais tourner en version portable, ne me demande pas d'avoir les droits administrateur et fonctionne sans (même s'il me prévient qu'il ne les a pas).

(si avec tout ça le clou n'est pas enfoncé...)

Ton problème ne serait-il pas le résultat de plusieurs problèmes car ce n'est pas parce que tu as mal à la tête et le nez qui coule que tu as un rhume (l'inverse est d’ailleurs tout aussi vrai) ?

Pour cela il faut vérifier étape par étape.

La première chose qui me vienne à l'esprit est le fichier host situé dans %WINDIR%\System32\drivers\etc, voici ce qu'il devrait contenir:

127.0.0.1           adresse_locale_de_ton_site
::1                      adresse_locale_de_ton_site

Après redémarrage, et lorsque Xamp fonctionne, écrire dans la barre d'adresse adresse_locale_de_ton_site t'affiche ta page d'accueil.

Si ce n'est pas le cas, je te conseillerais de vérifier aussi ton port 80 (ou celui que tu veux dans le fond pourvu que tu le précise dans le fichier host et dans Xamp). Certains anti-virus et autres firewall le bloquent ou en limitent drastiquement l'usage.

Cela a été évoqué plus haut et reste d'une évidence insoutenable, c'est de vérifier les différents fichiers de configuration (php et xamp).

D'autre part, attention entre version locale et version en ligne. Il faut penser à vérifier les phpinfo() afin de les faire correspondre ; il est bêta de performer un code en local qui se base sur une fonction qui est désactivée par l'hébergeur (par exemple la bibliothèque GD).

EDIT: je constate que d'après Xamp, quand je suis sur Windows 10, il comprend Windows 8. :-P
Modifié par Greg_Lumiere (27 Jan 2016 - 14:33)
Greg_Lumiere a écrit :

La première chose qui me vienne à l'esprit est le fichier host situé dans %WINDIR%\System32\drivers\etc, voici ce qu'il devrait contenir:

127.0.0.1           adresse_locale_de_ton_site
::1                      adresse_locale_de_ton_site


J'ai quasiment ça sauf qu'il y a le dièse sur la ligne #::1
Et voilà comment je vais sur mon site en local : 127.0.0.1:8078/WEB/index.php

Greg_Lumière a écrit :

Si ce n'est pas le cas, je te conseillerais de vérifier aussi ton port 80 (ou celui que tu veux dans le fond pourvu que tu le précise dans le fichier host et dans Xamp). Certains anti-virus et autres firewall le bloquent ou en limitent drastiquement l'usage.

Cela a été évoqué plus haut et reste d'une évidence insoutenable, c'est de vérifier les différents fichiers de configuration (php et xamp).

D'autre part, attention entre version locale et version en ligne. Il faut penser à vérifier les phpinfo() afin de les faire correspondre ; il est bêta de performer un code en local qui se base sur une fonction qui est désactivée par l'hébergeur (par exemple la bibliothèque GD).

EDIT: je constate que d'après Xamp, quand je suis sur Windows 10, il comprend Windows 8. :-P


J'avoue que j'ai un peu renoncé à chercher la cause réelle, je me bats maintenant avec le responsive et les medias queries, car je ne veux pas utiliser Joomla, Word Press et autres modules automatisés, j'ai regardé le code source qu'ils génèrent, il ne m'a pas plu. Depuis que le site est en ligne, je peux surfer avec Firefox sans bug. Mon problème venait donc bien d'un dérèglement en local... peut-être quand j'aurai fini de peaufiner l'aspect esthétique, je reviendrai dessus.
Alvano a écrit :
J'ai quasiment ça sauf qu'il y a le dièse sur la ligne #::1
Le dièse signifie que la ligne est un commentaire. Pour que la commande soit prise en compte il suffit d'enlever le dièse.

Alvano a écrit :
Et voilà comment je vais sur mon site en local : 127.0.0.1:8078/WEB/index.php
Suivant l'exemple précédent, voici comment j'accède au miens: adresse_locale_de_ton_site

Si le port 80 reste un problème que tu ne souhaites pas aborder dans l'immédiat, le fichier host se modifie ainsi:
127.0.0.1:8078/WEB           adresse_locale_de_ton_site
::1:8078/WEB                                                    adresse_locale_de_ton_site