Passer des variable dans un lien ?

Petit nouveau ! | 8 Messages

03 oct. 2009, 02:45

Salut ,
Comment faire passé des variables dans un lien ? par exemple :www.localhost.page1.php?id=658 et dans la page1 je récupère 658 .C'est faisable non ?
merci d'avance

Mammouth du PHP | 686 Messages

03 oct. 2009, 10:02

Méthode $_GET pour récuperer les variables
Pour les envoyer c'est dans le href
$id = 198;
echo'<a href="page.php?id='.$id.'">';

ViPHP
ViPHP | 2291 Messages

03 oct. 2009, 13:25

Salut ,
Comment faire passé des variables dans un lien ? par exemple :www.localhost.page1.php?id=658 et dans la page1 je récupère 658 .C'est faisable non ?
merci d'avance
Salut,

Effectivement, et dans ton exemple a partir de cette adresse pour récupéré le valeur de l'id tu fais par exemple.
$id = (isSet($_GET['id']) ? $_GET['id'] : null);

echo $id; //Affiche 658.
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Petit nouveau ! | 8 Messages

04 oct. 2009, 16:03

merci ça marche :D
es que j'utilise mysql_real_escape_string comme sa :
$result = mysql_query("select * from liens WHERE lienc='mysql_real_escape_string($id)'") ; ?

ViPHP
ViPHP | 1136 Messages

04 oct. 2009, 16:37

il faut concaténer .. comme une variable normale :
$result = mysql_query("select * from liens WHERE lienc=".mysql_real_escape_string($id)) ;
Si ce n'est pas une chaine de caractères , les quotes ne sont pas nécessaire .

Ch.

Eléphant du PHP | 58 Messages

04 oct. 2009, 20:34

$id = (isSet($_GET['id']) ? $_GET['id'] : null);

echo $id; //Affiche 658.
Bonjour,

Pouvez-vous me traduire d'une manière simple les termes de ce code ? Que signifie en particulier le point d'interrogation entre les deux $_GET ?
Ce code remplace-t-il plus élégamment celui que j'utilise habituellement ou sert-il à autre chose ? Voici ce que j'utilise :

Code : Tout sélectionner

if (!$id) $id = "";
Je vous remercie de votre leçon.

ViPHP
ViPHP | 1136 Messages

04 oct. 2009, 20:51

$id = (isSet($_GET['id']) ? $_GET['id'] : null);
traduction c'est la forme contractée de :

//si $_GET['id'] est défini 
if( isset($_GET['id']) ){

  //alors on copie la valeur dans $id
  $id = $_GET['id'];

}else{

  //sinon , $id est null
  $id = null;

}

Le code que tu utilises :
if (!$id) $id = "";
fonctionne mais n'est pas bon ( si $is n'existe pas , tu auras un warning ) , car if($var) ou if(!$var) est plus souvent utilisé pour tester un booleen.

Ch.

Eléphant du PHP | 58 Messages

04 oct. 2009, 21:01

Merci beaucoup pour votre rapide réponse. J'ai pris note de ce code.

ViPHP
AB
ViPHP | 5818 Messages

05 oct. 2009, 00:18

Pouvez-vous me traduire d'une manière simple les termes de ce code ? Que signifie en particulier le point d'interrogation entre les deux $_GET ?
Ce code remplace-t-il plus élégamment celui que j'utilise habituellement ou sert-il à autre chose ?
stopher t'a donné la réponse mais juste pour info, on appelle ça les "opérateurs ternaires" et l'on s'en sert effectivement très souvent pour définir des variables. Un petit lien complémentaire içi

Eléphant du PHP | 58 Messages

05 oct. 2009, 07:17

Merci beaucoup pour ce lien.