[RESOLU] code sur le serveur est different de mon code local

ViPHP
ViPHP | 2287 Messages

13 févr. 2012, 18:18

Au pire, tu peux nous envoyer ton fichier index.php ici même (en faisant disparaître les login/mot de passe dedans s'il en contient), et on regardera.

Ça se passe sous le formulaire de réponse à un post (onglet "ajouter des fichiers joints", en dessous du bouton d'envoi :) )
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

13 févr. 2012, 18:25

Erf j'ai loupé une étape :/

Ansi ne devrais pas poser de soucis (hormis au niveau des caractères "spéciaux" comme les accents).
Après vu le message d'erreur tu a forcément un caractères "invisible" au début du fichier (d'où l'orientation vers le problème UTF8 avec bom assez classique).
Notepad++ a un plugin permettant de voir le fichier en hexa ça peux aider.
Au pire tu peux nous filer le fichier en pièce jointe sur le sujet (normalement) ? Sans les éventuels code d'accès sgbd etc.

@+

Édit : erf grilled suis trop lent :/
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 11 Messages

13 févr. 2012, 19:18

j'ai réussi mais ca va me poser un autre pb : c'est l'inclusion de fichier qui pose des soucis :
j'ai un sous dossier php pour faire different scripts donc pour éviter les problèmes de chemin non trouvé j'ai cru bon de mettre tout les chemins en absolu hors la fonction include n'a pas l'air d'aimer car lorsque j'ai tt remis en relatif ca fonctionne : plus de message d'erreurs et la page s'affiche correctement (oui avec l'entete, le menu, le pied et le css pris en compte ca change tt lol)
mais je vais avoir un soucis : pour mes fichiers scripts je vais devoir créer des morceaux de fichiers propres dans le dossier php ou tt mettre a la racine => un peu contraignant non ?
y a t'il une solution plus souples pour éviter ca ?

ViPHP
ViPHP | 2287 Messages

13 févr. 2012, 19:32

Un lien vers ton site, histoire que tout le monde voie le problème (et pour faire un peu de publicité gratuite à ton site perso) : http://xavier.bkh.free.fr/construction.php

Si par "absolu" tu veux dire "qui commence par http://... " alors tu confonds deux concepts très importants, les URL et les chemins sur un système de fichier... et c'est pas bien du tout :non: Utiliser une URL sous-entend que l'accès va se faire à travers le réseau, et ça change beaucoup de choses par rapport à une éxécution directe.

Quand il s'agit de chemin à passer en argument aux fonctions include() et require(), c'est le système de fichier qu'il faut utiliser, donc pas de http:// devant. Un chemin absolu dans le système de fichiers, par exemple, ça ressemble à ça :

Code : Tout sélectionner

/mnt/154/sda/2/c/xavier.bkh/include
Le premier / désignant la racine du système de fichiers.

Il y a aussi des chemins vers des ressources de ton site (css, js, images), qui sont utilisés dans le HTML. Ici il s'agit forcément d'URLs (l'accès réseau est sous-entendu et obligatoire, puisque ces chemins sont lus sur l'ordinateur client, et que les fichiers pointés sont sur le serveur). À ne pas confondre avec les fichiers php qui sont accédés sur et par (dans le cas d'include et require) le serveur ;)
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphanteau du PHP | 11 Messages

14 févr. 2012, 01:02

Merci, c'est cool je viens effectivement de comprendre mon ignorance, oui j'ai voulus mettre des liens absolue mais pour des commandes serveurs lol ca ne veux plus rien dire :/
Désolé, je débute et j'arrivais pas a comprendre ce qui se passait :/
Mais heureusement vous êtes la pour nous éclairer et c'est cool : je vais enfin pouvoir mettre mon site au clair, comme je l'avais pensé
merci ;)
par contre je vais essayer de mieux réfléchir la prochaine fois !!

[edition]
edition du message le 14 février à 0:21
ce sujet est donc résolu, mais désolé : je n'arrive pas a savoir comment faire pour cela.
Je ne sais pas modifier le titre du sujet, ni placer de drapeau pour désigner la meilleur réponse, et malheureusement cela n’apparaît pas clairement dans la partie faq.
bonne journée ;) !!