Page 1 sur 1

$id = !empty($_GET['id']) ? $_GET['id'] : 14; PROBLEME

Posté : 14 janv. 2008, 09:24
par stephanie61
Recoucou, j'ai encore un probléme,
Voici mon code:
<?php  
$id = !empty($_GET['id']) ? $_GET['id'] : 14;  

?>  

<?php  
$affl_id = !empty($_GET['affl_id']) ? $_GET['affl_id'] : 34084;  
?> 


Donc dans mon lien j'ai mis ça:

Code : Tout sélectionner

rotate-html.php?webmaster_id=<?php echo $affl_id; ?>;id=<?php echo $id; ?>"
Si mon lien est :

Code : Tout sélectionner

http://dudule.com/index.php?affl_id=9999;id=18
Je devrais avoir:

Code : Tout sélectionner

rotate-html.php?webmaster_id=9999;id=18
Eh bien non, moi j'ai ça:

Code : Tout sélectionner

rotate-html.php?webmaster_id=9999;id=18;id=14"
Quel est le probléme?
Car dans les liens sur ma page, j'aimerai pouvoir faire apparaitre soit affl_id, soit id, soit les deux.
Merci pour votre aide
bisous
stéf

Posté : 14 janv. 2008, 09:47
par d0m
Déjà , peut être que je me trompe mais le séparateur ; n'est pas valide dans une URL.
C'est plutôt des séparateurs comme &.

Sinon pour ce qui est des id, essaie avec :
if(empty($_GET['id'])) 
  $id = 14;
else
  $id = $_GET['id'];

Re: $id = !empty($_GET['id']) ? $_GET['id'] : 14; PROBLEME

Posté : 14 janv. 2008, 10:35
par Berzemus
D0m à entièrement raison. (pour la première partie, la seconde étant remplacée par l'opérateur ternaire que tu utilises déjà)

Si ton lien est

Code : Tout sélectionner

http://dudule.com/index.php?affl_id=9999;id=18
Pour ton script affl_id correspond à "9999;id=18"

Donc, id n'était pas spécifié, il reçoit la valeur 14, par défaut.

Du coup, ton script fait comme ceci:
rotate-html.php?webmaster_id=<?php echo $affl_id;/*9999;id=18*/  ?>;id=<?php echo $id;/*14*/ ?>" 
Et ton lien devient:
rotate-html.php?webmaster_id=9999;id=18;id=14"

Par la suite, et à nouveau à cause de cette erreur, ta page deviendrait
rotate-html.php?webmaster_id=9999;id=18;id=14;id=14
Et ainsi de suite.

Il te faut corriger ton script:
rotate-html.php?webmaster_id=<?php echo $affl_id; ?>&id=<?php echo $id; ?>" 

Posté : 14 janv. 2008, 11:34
par stephanie61
Salut,
Merci super ça fonctionne trés bien, vous êtes des amours :D
Merci encore
bisous
stéphanie

Posté : 14 janv. 2008, 11:38
par Ryle
Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)

Posté : 14 janv. 2008, 15:46
par Xenon_54
Tu peux utiliser les ; si tu le désires.

Il faut simplement spécifier à PHP que tu utilises ; en lien et place de &
http://www.php.net/manual/fr/ini.core.p ... ator.input
http://www.php.net/manual/fr/ini.core.p ... tor.output

Il faut donc créer un fichier .htaccess et insérer ces directives:

Code : Tout sélectionner

php_value arg_separator.input ";" php_value arg_separator.output ";"