Fonction "isset" marchant pas avec php4?

Eléphanteau du PHP | 40 Messages

25 févr. 2007, 15:43

Bonjour, je ne comprends pas, je suis chez un hebergeur ayant la version 4.4.4 de php, et il ne comprends pas le petit script :
<?php
if (isset($site))
{
$id = $_GET['site'];
print("<center>bienvenue sur $id</center>");
}
?>
Que je mette : test.php?site=24 ou test.php?[nimporte]=[nimporte]
j'obtiens une page blanche ... meme pas de message d'erreur .. cela vient il de mon serveur?
Merci pour vos réponses.
-- Moteur de recherche qui agit pour l'environnement : www.ecogine.org --

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

25 févr. 2007, 15:59

Pourquoi tu n'utilises pas aussi $_GET['site]' dans ton test ? Si tu passes une variable "site" dans l'url, c'est pourtant ce qu'il faut utiliser, la variable $site correspondant à une variable définie directement dans le script.

Ce qui se passe est donc parfaitement normal.

Eléphanteau du PHP | 40 Messages

25 févr. 2007, 16:29

En fait, elle ne sera pas forcément présente, et dans ce cas, ca mettra une erreur ...
-- Moteur de recherche qui agit pour l'environnement : www.ecogine.org --

ViPHP
ViPHP | 1996 Messages

25 févr. 2007, 17:03

non cela ne provoquera pas d'erreur mais cela n'affichera pas print("<center>bienvenue sur $id</center>"); c'est tout.

essaye alors
<?php
if (isset($_GET['site']))
{
$id = $_GET['site'];
print("<center>bienvenue sur $id</center>");
}
?>
Petit conseil cependant essaye de tester si la variable est vide ou non via empty(); car dans l'url en méthode GET :
test.php?site=24 -> if (isset($_GET['site'])) répondra TRUE
test.php?site= -> if (isset($_GET['site'])) répondra TRUE aussi
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Eléphanteau du PHP | 40 Messages

25 févr. 2007, 21:22

Ca marche, merci beaucoup, vous êtes vraiment sympa sur ce forum!
-- Moteur de recherche qui agit pour l'environnement : www.ecogine.org --

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

25 févr. 2007, 21:50

Petite correction de syntaxe :
il est recommandé d'extraire les variables des chaînes de caractères...
if (isset($_GET['site']))
   { $id = $_GET['site'];
     echo "<center>bienvenue sur ",$id,"</center>";
   } 

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

26 févr. 2007, 00:35

Et voici le pouruqoi de ce changement de configuration :
http://www.phpfrance.com/forums/voir_sujet-48.php