[php] probleme bizarre de passage de parametre

probleme bizarre de passage de parametre [php] - PHP - Programmation

Marsh Posté le 10-01-2003 à 21:28:41    

chez mon hebergeur, les variables passées en parametre aux pages ne sont pas prises en compte, alors que chez moi bien :(
 
Chose bizare, phpmyadmin fonctionne tres bien donc il doit bien y avoir un truc  :ouch:

Reply

Marsh Posté le 10-01-2003 à 21:28:41   

Reply

Marsh Posté le 10-01-2003 à 22:07:14    

Reply

Marsh Posté le 10-01-2003 à 22:25:23    

argh  :(  
 
 
merci quand meme :jap:

Reply

Marsh Posté le 10-01-2003 à 22:32:26    

et ya pas une commande bien facile qui va chercher tout les $_GET['xxx'] et les affecter a des variables $xxx que je pourrais mettre au debut de chaque page ?
 
Ps : je connais pas grand chose au php

Reply

Marsh Posté le 10-01-2003 à 23:05:42    


non, justement, le _GET est la pr ameliorer les choses, avant, php assurait la creation de ttes les variables de la maniere dont tu le souhaites et automatiquement en plus, mais c'est le mal  :o  :lol: .
 
donc  
if (isset($_GET["action"]))  
 $action = $_GET["action"];
 
c'est pour justement essayer de renforcer la securité des sites qui quand ils sont codés trop simplement laissent la porte ouverte a tte les fenetres.
 
et c pour ton bien.

Reply

Marsh Posté le 10-01-2003 à 23:25:40    

ouai, on dit ca ...  :o

Reply

Marsh Posté le 11-01-2003 à 11:28:21    

beleg a écrit :


non, justement, le _GET est la pr ameliorer les choses, avant, php assurait la creation de ttes les variables de la maniere dont tu le souhaites et automatiquement en plus, mais c'est le mal  :o  :lol: .
 
donc  
if (isset($_GET["action"]))  
 $action = $_GET["action"];
 
c'est pour justement essayer de renforcer la securité des sites qui quand ils sont codés trop simplement laissent la porte ouverte a tte les fenetres.
 
et c pour ton bien.


 
Je vois pas trop la différence entre faire ce que tu fais et utiliser un extract($_GET), qui va prendre toutes les variables passés en GET (et donc définies) et les transformer en leurs équivalents en variable "classique".
 
En fait, autant je vois l'utilité de $_POST (et autres), autant pour $_GET j'aimerais bien avoir un exemple de problème de sécurité que l'on peut avoir si on ne l'utilise pas (avec register_global à on donc).
 
J'ai beau cherché, à chaque fois en gros ce que je lis est "c'est plus sécurisé point", mais y'a jamais d'exemple concret, contrairement à $_POST par ex.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 11-01-2003 à 12:55:11    

c'est pas évident de trouver un exemple, il y en avait un très bon sur phpinfo, mais le site est fermé... faut attendre les archives :(
 
imaginons...
index.php

Code :
  1. <?
  2. include ("common/config.php" );
  3. $is_admin= 0;
  4. switch($_GET['page']){
  5.    case 'admin':
  6.         if ($_GET['login']=="test" ){
  7.           $is_admin=1;
  8.           include ("admin/admin.php" );
  9.         }
  10.         else{
  11.           echo "non autorisé";
  12.         }
  13.         break;
  14.    default:      include ("accueil" ); break;
  15. }
  16. ?>


admin/admin.php

Code :
  1. <?
  2. if ($is_admin){
  3.    echo "je suis admin";
  4. }
  5. else{
  6.   echo "bye bye";
  7. }
  8. ?>


global= off : pas de problème, tu peux essayer d'accéder directement à admin/admin.php, tu n'arrivera pas à afficher "je suis admin"
 
global= on : url http://site.com/admin/admin.php?is_admin=1
 --> "je suis admin"
 
la propreté de la programmation fait bcp, mais disons qu'il est plus dangeureux de travailler avec global à on...


Message édité par ethernal le 11-01-2003 à 13:02:42
Reply

Marsh Posté le 11-01-2003 à 14:33:54    

ethernal a écrit :

c'est pas évident de trouver un exemple, il y en avait un très bon sur phpinfo, mais le site est fermé... faut attendre les archives :(
 
imaginons...
index.php

Code :
  1. <?
  2. include ("common/config.php" );
  3. $is_admin= 0;
  4. switch($_GET['page']){
  5.    case 'admin':
  6.         if ($_GET['login']=="test" ){
  7.           $is_admin=1;
  8.           include ("admin/admin.php" );
  9.         }
  10.         else{
  11.           echo "non autorisé";
  12.         }
  13.         break;
  14.    default:      include ("accueil" ); break;
  15. }
  16. ?>


admin/admin.php

Code :
  1. <?
  2. if ($is_admin){
  3.    echo "je suis admin";
  4. }
  5. else{
  6.   echo "bye bye";
  7. }
  8. ?>


global= off : pas de problème, tu peux essayer d'accéder directement à admin/admin.php, tu n'arrivera pas à afficher "je suis admin"
 
global= on : url http://site.com/admin/admin.php?is_admin=1
 --> "je suis admin"
 
la propreté de la programmation fait bcp, mais disons qu'il est plus dangeureux de travailler avec global à on...


 
Ok, merci pour cet exemple effectivement évident :jap:


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed