Probleme en $_GET
megarachid
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
megarachid Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
megarachid Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je veux savoir comment on peut utiliser $_GET pour récupérer une variable dans un lien php j'ai essayer avec ca mais il marche pas
<?php
if(!empty($_GET['pseudo'])&&!empty($_GET['commentaire'])&&!empty($_GET['pays'])&&!empty($_GET['ville'])&&!empty($_GET['sexe'])&&!empty($_GET['age']))
{
$pseudo=$_GET['pseudo'];
$commentaire=$_GET['commentaire'];
$pays=$_GET['pays'];
$ville=$_GET['ville'];
$sexe=$_GET['sexe'];
$age=$_GET['age'];
}
?>
je veux savoir comment on peut utiliser $_GET pour récupérer une variable dans un lien php j'ai essayer avec ca mais il marche pas
<?php
if(!empty($_GET['pseudo'])&&!empty($_GET['commentaire'])&&!empty($_GET['pays'])&&!empty($_GET['ville'])&&!empty($_GET['sexe'])&&!empty($_GET['age']))
{
$pseudo=$_GET['pseudo'];
$commentaire=$_GET['commentaire'];
$pays=$_GET['pays'];
$ville=$_GET['ville'];
$sexe=$_GET['sexe'];
$age=$_GET['age'];
}
?>
1 réponse
Salut !
Le soucis ici, c'est que l'ensemble des éléments dans l'URL sont testés et doivent être présents. Je conseille plutôt ça :
Par ailleurs, je te conseille très fortement de mettre des htmlspecialchars partout, comme ça :
Ne pas le faire est dangereux (risque de piratage), et c'est une erreur grave dans le développement web.
Le soucis ici, c'est que l'ensemble des éléments dans l'URL sont testés et doivent être présents. Je conseille plutôt ça :
<?php if (!empty($_GET['pseudo'])) { $pseudo=$_GET['pseudo']; } else { $pseudo=''; } if (!empty($_GET['commentaire'])) $commentaire=$_GET['commentaire']; } else { $commentaire=''; } if (!empty($_GET['pays'])) { $pays=$_GET['pays']; } else { $pays=''; } if (!empty($_GET['ville']) { $ville=$_GET['ville']; } else { $ville=''; } if (!empty($_GET['sexe'])) { $sexe=$_GET['sexe']; } else { $sexe=''; } if (!empty($_GET['age'])) { $age=$_GET['age']; } else { $age=''; } ?>
Par ailleurs, je te conseille très fortement de mettre des htmlspecialchars partout, comme ça :
if (!empty($_GET['age'])) { $age=htmlspecialchars($_GET['age']); }
Ne pas le faire est dangereux (risque de piratage), et c'est une erreur grave dans le développement web.
De plus, tu passes ton formulaire en GET avec beaucoup de textes (pseudo, commentaire, pays, ville, sexe, age) et par conséquent, ton url doit être très longue si tu ne limite pas la taille de chaque champ.
Il ne faut pas oublié que la longueur maximale d'une url est de 256 caractères et que tout ce qui dépasse sera donc tronqué et par conséquent tes variables qui viennent ensuite et leur contenu disparaissent.
Surtout pour la variable "commentaire" qui peut parfois être très long.
et j'ai un autre probleme
je fais d'affiche de tableux d'inscription d'une une table php comme des liens et je veux savoir comment faire pour passer le nom que je clique dans un URL avec le page qui vas afficher ila vas afficher sur une iframe
mon c'est que je ne sait pas comment passer ce pseudo que je clique pour le utiliser dans des requete sur dans la page distant dans URL
et c'est ca le code que j'ai utilise
echo '<td bgcolor="#CCCCCC"><a href = "info.php ?pseudo='.$row['pseudo']. '" target="zone">' .$row['pseudo']. '<br/></a></td>';