IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Récupérer variable dans une URL


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 35
    Points : 10
    Points
    10
    Par défaut Récupérer variable dans une URL
    Bonjour à tous !
    Voilà j'ai un petit problème avec un truc que j'ai fait.
    Quand je clic sur une case d'un tableau, ca me renvoie vers une autre page mais en gardant en mémoire plusieurs variables. Ensuite sur la page où j'ai été envoyé, je récupère le contenu des variables avec $_GET.

    Donc là j'ai mon tableau, y'a des trucs écrits dans les cases, sauf que pour certaines cases la redirection marche pas : j'ai remarqué que c'étaient celles dont le truc écrit à l'intérieur comportait un espace.

    Pour être plus clair :
    si je clic sur une case vide, ça marche, je suis renvoyé vers la page suivante;
    si je clic sur une case avec écrit "1234" ou "Jerem" ca marche aussi;
    par contre si je clic sur une case avec "Poste de travail" ou "06 34 34" (bref, un espace dedans) je ne peu pas cliquer dessus. Il ne se passe rien, pas d'erreur, rien...

    Toutes les cases sont faites avec la même ligne de code, donc je pense que l'erreur ne vient pas de la ligne qui construit les cases avec <td> </td>.
    De plus, si je laisse dans mon <td> </td> la redirection avec URL mais en enlevant les variables (zerzer.php?var=x devient zerzer.php) ça remarche, je peu recliquer sur TOUTES les cases et ça me redirige bien.

    En résumé, il y a un problème avec les variables qui contiennent dans leur nom un espace.

    Une idée ?
    merci !

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Peut-être que si tu nous donnais un peu de code... Notamment celui qui construit les liens...

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Désolé je pensais avoir été suffisamment clair et que c'était un problème "connu".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<td width=60  height=35 ALIGN=center onclick=window.location.href='../Numeros/LierNumero.php?numero_case_repartiteur=&id_repartiteur=&numero_case_concentrateur=$i&id_concentrateur=$id&numero=$num'><a id='couleurlien' ?>".$num."</a></td>";
    Pour des $num sans espace ça marche : 6666, 1234, Jerem, Julien, etc...
    Par contre les deux seules cases de mon tableau où le $num contient un espace, genre "06 34 34 34 34" ou "Poste de travail", ça ne marche pas, je ne peu même pas cliquer sur la case, il ne se passe rien, meme pas un messsage d'erreur.

    Merci

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Erf t'as edit ton post...
    Comme je l'expliquais :

    En fait j'ai voulu mettre numero_case_repartiteur=NULL, c'est pour ça que j'ai rien mis et mis le "&" juste derriere.
    Je réfléchis, mais bon à priori ça vient pas de là vu que pour les autres cases ça marche...
    C'est vraiment que lorsqu'il y a un espace...

    RE:RE:Edit > ok

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tu peux utiliser les fonctions urlencode pour ce genre de chose.

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    donc l'erreur vient de :

    ... &numero=$num ...

    A ce moment là, ça doit foirer quand le $num en question contient des espaces.

    Merci je test tout de suite "urlencode"

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Points : 142
    Points
    142
    Par défaut
    je t'ai refait ton bout de code, des erreurs synthaxiques:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<td width=60  height=35 ALIGN=center onclick=window.location.href='../Numeros/LierNumero.php?numero_case_repartiteur=&id_repartiteur=&numero_case_concentrateur=".$i."&id_concentrateur=".$id."&numero=".$num."'><a id='couleurlien'>".$num."</a></td>";
    que venait faire: <a id='couleurlien'?>

    de plus c'est normal que tu ai des erreurs avec des espaces car tu passes tes arguments via JS donc effectivement tu dois les encoder

  8. #8
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Ok merci, je n'arrive pas trop avec urlencore donc je vais d'abord réécrire comme ça.

    Quant à <a id='couleurlien'>, c'est pour du CSS.

    EDIT : ça ne marche pas en mettant bien ".$num." , donc je test urlencode

    EDIT 2 : Erf désolé mais j'arrive pas bien avec urlencode... j'ai du mal comprendre un truc...

    j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<td width=60  height=35 ALIGN=center onclick=window.location.href='../Numeros/LierNumero.php?numero_case_repartiteur=&id_repartiteur=&numero_case_concentrateur=$i&id_concentrateur=', urlencode($id), '&numero=', urlencode($num), ''><a id='couleurlien' ?>".$num."</a></td>";
    et ça ne me fait pas de lien...

  9. #9
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    essaye comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<td width=60  height=35 ALIGN=center onclick=window.location.href='../Numeros/LierNumero.php?numero_case_repartiteur=&id_repartiteur=&numero_case_concentrateur=$i&id_concentrateur=".urlencode($id)."&numero=".urlencode($num)."'><a id='couleurlien' ?>".$num."</a></td>";
    Au fait, pourquoi te prendre la tête avec un window.location

  10. #10
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    C'est Bon (pas "con"...) ça marche, merci beaucoup ! fallait juste mettre les " à la place des ' ...

    Pour le window.location, je regarde ce que c'est et après je te dis pourquoi je l'ai mis... L O L

    En fait je voulais une case de tableau cliquable, je suis allé sur google, et j'ai trouvé ça sur un forum, alors j'ai tout recopié sans vraiment savoir si il me fallait TOUT ou juste un bout...

    EDIt : ok je viens de voir pour window location, ça a l'air cool... mais je m'en sers pas du tout :=)

    Encore merci et bonne journée. En fait, je dirais plutôt "à bientôt" voire "à tout à l'heure"... Voire "restez là j'arrive avec une autre question à la ***"

Discussions similaires

  1. Réponses: 10
    Dernier message: 26/07/2007, 14h16
  2. Récupérer Variable dans une autre page et les sauvegarder
    Par MarianD dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/01/2007, 21h07
  3. [Javascript][get]Enlevez des variables dans une url
    Par bouba83 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 08/12/2006, 14h31
  4. Problème d'envoie de variables dans une url
    Par xenos dans le forum Langage
    Réponses: 9
    Dernier message: 28/11/2006, 23h48
  5. inserer une variable dans une url
    Par elmoino dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/07/2006, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo