[Résolu] Pb avec mes scripts PHP sur sme 7

Forum dédié à la distribution du même nom et que vous pourrez télécharger sur http://www.contribs.org. La nouvelle version de cette distribution se nomme SME Server

Modérateur: modos Ixus

[Résolu] Pb avec mes scripts PHP sur sme 7

Messagepar pbordere » 18 Nov 2006 20:57

Bonsoir tous le monde,

Après installation d'une sme 7 en lieu et place d'une sme 6 et après restauration de mes ibays, je me heurte à un problème.

Les scripts php fonctionnant sur le modéle "truc.php?rep=machin" ne fonctionnent plus. Je ne dispose plus du contenu de ma variable $rep dans mes scripts :!:

Quels sont les trucs que j'ai loupé lors du passage en sme 7 :?:


D'avance merci.
Dernière édition par pbordere le 19 Nov 2006 15:41, édité 1 fois au total.
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar MasterSleepy » 19 Nov 2006 08:27

Salut,

C'est tout à fais normal car dans la version 7 la propriété "register_globals" est à off.
C'est elle qui te permettais de référencer tes paramètres par des variables.
Il faut sa voir que c'est déconseillé d'avoir se paramètre activer.

Tu as donc deux solutions:
1) Tu changes toutes tes scripts pour faire référence à "$_REQUEST[parametre]" au lieux de "$parametre".
2) Ou tu changes le register_globals, mais attention !!

Pour la solution 1, je ne peux rien pour toi :(
Pour la deuxième, il faut que tu changes le template "40DataHandling".
Donc :
Code: Tout sélectionner
mkdir -p /etc/e-smith/templates-custom/etc/php.ini/
cp /etc/e-smith/templates/etc/php.ini/40DataHandling /etc/e-smith/templates-custom/etc/php.ini/
pico /etc/e-smith/templates-custom/etc/php.ini/40DataHandling

il devra ressembler à
Code: Tout sélectionner
variables_order         =       "EGPCS"
register_globals        =       On
register_argc_argv      =       On
post_max_size           ={
    my $ms = $php{PostMaxSize} || "20M";
    $OUT .= "$ms";
}
gpc_order                       =       "GPC"
magic_quotes_gpc        =       On
magic_quotes_runtime=   Off
magic_quotes_sybase     =       Off
auto_prepend_file       =
auto_append_file        =
default_mimetype = "text/html"

et enfin
Code: Tout sélectionner
expand-template /etc/php.ini
service httpd-e-smith sigusr1


Mais je te conseille la solution à cours terme, cad la mettre en place mais fais suivre par la modification des scripts php par la suite et ensuite de retirer cette modif.

A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Re: Pb avec mes scripts PHP sur sme 7

Messagepar chpego » 19 Nov 2006 11:59

pbordere a écrit:Les scripts php fonctionnant sur le modéle "truc.php?rep=machin" ne fonctionnent plus. Je ne dispose plus du contenu de ma variable $rep dans mes scripts :!:


MasterSleepy a écrit:1) Tu changes toutes tes scripts pour faire référence à "$_REQUEST[parametre]" au lieux de "$parametre".


Je dirai même plus, par rapport à son cas, ca sera $_GET['rep'] :wink:
SME7 Final (Serveur et Passerelle ) :
- ANTEC SLK3000B-EU
- ASROCK K7VT4A PRO
- AMD Duron 850Mhz
- KINGSTON 1024Mo PC3200
- Maxtor 80Go (IDE), Western Digital 320Go (SATAII)
Avatar de l’utilisateur
chpego
Enseigne de vaisseau
Enseigne de vaisseau
 
Messages: 156
Inscrit le: 16 Fév 2006 19:01
Localisation: Strasbourg

Messagepar pbordere » 19 Nov 2006 15:40

Bonjour et merci pour ces deux réponses,

Dans un premier temps j'ai effectué les modifications proposées par MasterSleepy, le temps d'adapter mes scripts.

En attendant, je me renseigne sur $_REQUEST[rep] et sur $_GET['rep'].

Merci pour votre aide. :P




NB : ce forum est bien plus réactif que bon nombre que je continue à fréquenter :wink:
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar jibe » 19 Nov 2006 23:48

Salut,

Si tu permets, Master-Sleepy... Je déconseille plutôt l'utilisation de $_REQUEST au profit des $_GET, $_POST, $_SESSION, $_COOKIE et $_ENV qu'il regroupe... Pas très important à priori, mais je pense que c'est une bonne discipline parce que ça permet (et oblige) de savoir d'où viennent les variables, et ça peut éviter des bugs potentiels difficiles à trouver.

Ceci est assez bien expliqué sur cette page, même si perso j'aurais insisté plus sur la difficulté de déterminer la source de l'erreur si on récupère avec $_REQUEST la valeur positionnée par $_POST dans un formulaire alors qu'on pense récupérer celle du cookie, et la facilité avec laquelle on utilisera probablement le même nom (login selon l'exemple donné) pour ces deux variables différentes.

Il me parait pas plus difficile, beaucoup moins dangereux et beaucoup plus clair d'utiliser $_GET, $_POST, $_SESSION, $_COOKIE et $_ENV...
"Le monde ne sera pas détruit par ceux qui font le mal, mais par ceux qui les regardent sans rien faire" (Albert Einstein)

Autrefois, l'Etat défendait des valeurs. Maintenant, il défend des profits... (Anne Haunnime)
Avatar de l’utilisateur
jibe
Amiral
Amiral
 
Messages: 4366
Inscrit le: 17 Oct 2003 00:00
Localisation: Haute Savoie

Messagepar MasterSleepy » 20 Nov 2006 09:15

Salut jibe,

Merci pour ces précisions, maintenant je pouvoir repasser sur une partie de mes scripts ;-)

A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar pbordere » 20 Nov 2006 10:06

Bonjour,

Merci également pour ces précisions.
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France


Retour vers E-Smith / SME Server

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité