Aller au contenu

[réglé]cherche spécialiste PHP


Sujets conseillés

Posté (modifié)

Bonjour

Mon hebergeur veut que mon site soir reprogrammé pour qu'il fonctionne avec les parametres php :

register_global = off

safe_mode = on

Pour moi c'est du chinois !

Quelqu'un à une idée svp ??

Merci à vous

Modifié par yakat
Posté

Salut,

register_global = off : cela veut dire que tu ne peux pas utiliser les variables php sans préciser d'où elles viennent ($_GET, $_POST, $_SESSION, $_COOKIE, ...). Par exemple, si tu as un formulaire avec un champs = nom, et que tu l'envoi en POST, pour récuperer la variable tu dois utiliser $_POST["nom"] et non plus simplement $nom.

Ainsi avec register_global = on, les variables $_POST["nom"] et $nom sont identique.

Juste pour info, register_global = off est initialisé à off par défaut dans php.ini depuis PHP 4.2.0

safe_mode = on : un certain nombre de fonctions sont limitées ou désactivées (celles dédiées aux commandes systèmes, notamment). On trouvera ici une liste des fonctions affectées par l'activation du safe_mode. De plus, une vérification stricte des permissions d'accès des fichiers (basées sur l'UID et le GID) est faite sur les fonctions concernées. Enfin, les variables d'environnement sont protégées.

Voila j'espère avoir été clair. ;)

Posté

ton hébergeur a raison...

pour register globals = off faut tout revoir si c'est codé à la barbare..notamment la récupération des variables.

pour safe mode, il faut si tu accédes a des fichiers via fopen et autre travailler en fullpath et pas en relatif

a+

Posté
ton hébergeur a raison...

pour register globals = off faut tout revoir si c'est codé à la barbare..notamment la récupération des variables.

pour safe mode, il faut si tu accédes a des fichiers via fopen et autre travailler en fullpath et pas en relatif

a+

<{POST_SNAPBACK}>

Heu comment voir en kel mode oon est actuellement ?

Peut être qu'un des 2 modes est déjà en place non ?

Posté

Hello,

Un petit appel à phpinfo() donnera le résultat ;)

@++

Posté

Dommage

register_globals Off

safe_mode On

A la limite pour register_globals à Off tu peux passer par un p'tit script qui mets les clés des valeurs globales en variable. Ainsi tu as $_GET['mavar'] qui est aussi accessible avec $mavar (une fois passé dans la moulinette du script).

Un exemple de script ici, mais tu peux aussi le developper toi même :)

Posté
Dommage

A la limite pour register_globals à Off tu peux passer par un p'tit script qui mets les clés des valeurs globales en variable. Ainsi tu as $_GET['mavar'] qui est aussi accessible avec $mavar (une fois passé dans la moulinette du script).

Un exemple de script ici, mais tu peux aussi le developper toi même :)

<{POST_SNAPBACK}>

c'est un peu du chinois pour moi tout ça ... et je comprend pas tout là

Posté

Pour faire simple, au lieu de devoir modifier tous tes scripts, tu pourrais juste rajouter une petite fonction au début du script qui te fera marcher ton programme même si tu configures le serveur autrement ;)

Posté

1/ merci d'écrire sans sms ;)

2/ Prends la peine de donner un nom explicite au sujet de la discussion.

3/ je ne suis pas sûr que ton hébergeur ait un mot à dire quant-à ton code !?

4/ Tu as normalement, pour ton site, une page appelée config.php, ou quelque chose comme ca. Cette page devrait être appelée pour chaque page de ton site. C'est dans cette page qu'il te faut mettre les différentes fonctions nécessaires. Ainsi, elles seront appelées à chaque fois.

Posté
merci d'écrire sans sms

-> c'est vrai que l'on a un peu de mal la...

<{POST_SNAPBACK}>

je n'écris pas en sms moi ?! :nono:

Bon sinon merci je vais essayer et vous tiens au courant

Posté
3/ je ne suis pas sûr que ton hébergeur ait un mot à dire quant-à ton  code  !?

<{POST_SNAPBACK}>

Anonymus, j'ai lu plusieurs fois que les hébergeurs "obligeaient" les hébergés à reconfigurer le site pour qu'il marche en register_globals On, pour des raisons de sécurité. L'hébergeur risque tout autant que le webmaster s'il y a une attaque sur le site, sur un serveur mutu par exemple, ça peut faire des dégâts. Bref, ça ne m'étonne pas tant que ça sa demande !

je n'écris pas en sms moi ?! :nono:

Bon sinon merci je vais essayer et vous tiens au courant

<{POST_SNAPBACK}>

Moi ça m'avait pas choqué (je suis habitué, cf mon site en signature) mais je pense que ce sont les "qu" qui passent pas en "k" dans la langue française pour l'instant ;)

La modération est musclée pour ça, mais il faut comprendre que si on laisse passer certaines choses, les autres suivront et on se retrouvera avec un beau langage qui ne veut plus rien dire !

Posté (modifié)
4/ Tu as normalement, pour ton site, une page appelée config.php, ou quelque chose comme ca. Cette page devrait être appelée pour chaque page de ton site. C'est dans cette page qu'il te faut mettre les différentes fonctions nécessaires. Ainsi, elles seront appelées à chaque fois.

<{POST_SNAPBACK}>

j'ai pas de page config.php ...

Mais sinon il faut que je rajoute quoi comme script ?

Modifié par yakat
Posté

Bah crées un config.php que tu pourras inclure au début de tes fichiers...

include('config.php');

Dedans, tu mets la fonction qui est sur le lien mis par Jok. (même si je la trouve complexe, un simple foreach des $_GET et $_POST ne suffirait pas, au lieu de tout vérifier comme ça ? Bref..)

Ensuite, si tu veux que ça soit pris en compte dans tous les fichiers, tu mets juste à la fin de config.php la ligne :

phpdigHttpVars();

Et ensuite, change la config de ton serveur en mettant sur On register_globals, pour voir si ton site marche encore...

Posté
change la config de ton serveur en mettant sur On register_globals, pour voir si ton site marche encore...

<{POST_SNAPBACK}>

Heu, c'est un hébergement en mutualisé, ou un dédié ?

Yaka, pour le problème de register_globals, plusieurs petites choses et rappels:

Quelles que soient les raisons, le fait d'être passé à OFF oblige à coder un peu plus proprement qu'avant, ce qui est une bonne chose.

Maintenant, si tu ne connais rien au php, certaines astuces permettent malgré tout de laisser ces programmes tels que.

La plus aisée est d'indiquer, dans un fichier .htaccess, ceci:

PHP_FLAG register_globals on

Dans ce cas, le plus difficile à réaliser est de créer ce fichier (.htaccess, bizarre, non ?)

La deuxième a été donnée plus haut, avec un appel à un fichier externe, qui testera la valeur de la méthode d'envoi des infos ($_GET, ou $_POST).

xpatval

Posté

Il faut toujours entourer ton code php des marqueurs <?php et ?> sinon il sera affiché comme c'est actuellement le cas.

Ces marqueurs font savoir à l'interpréteur Php (et avant cela au serveur Apache) que la page contient du code à exécuter.

Dan

Posté

Merci à vous tous et particulièrement à xpatval

Il m'a juste suffit de rajouter le .htaccess et le tour est joué !

Le site est de nouveau disponible !!

Merci encore ! :)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...