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

PHP & Base de donn�es Discussion :

[SQL] Espace dans une variable pour SQL


Sujet :

PHP & Base de donn�es

  1. #1
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    10
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 10
    Par d�faut [SQL] Espace dans une variable pour SQL
    Petit probl�me. Quand l'utilisateur clique sur le lien, la page est recharg� avec une variable dans l'URL. Cette variable contient un espace (transform� en %20 dans l'URL). Cette m�me variable sert pour une requ�te SQL. J'ai tout v�rifi� avec une variable sans espace, tout fonctionne. Mais d�s que la variable a un espace, la requ�te ne fonctionne pas. Pas de message d'erreur, mais une r�ponse vide.

    Plus de pr�cision si besoin :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    if (isset($_GET[nom_console]))
    {
      // -->connexion à la base
      $sql = mysql_query("SELECT * FROM jeu WHERE nom_console='{$_GET[nom_console]}'")
      while ($donnees = mysql_fetch_array($sql) )
      {
        echo "jeu : ";
        echo $donnees[nom_jeu];
      }
      echo "console : ";
      echo $_GET[nom_console];
    }
    else
    {
    ?>
      <a href="essai.php?nom_console=Nintendo DS">essai</a>
    <?php
    }
    ?>
    affichage souhait� :
    jeu : nom du jeu 1
    jeu : nom du jeu 2
    console : Nintendo DS

    affichage r�el :
    console : Nintendo DS

    J'ai essay� en modifiant les guillemets et les quotes, mais rien ne change.

  2. #2
    Membre �m�rite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par d�faut
    que veux tu faire? enlever l'espace de ta variable? si c'est ce que tu veux faire, utilise la fonction trim.

  3. #3
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    10
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 10
    Par d�faut
    non je souhaite justement garder cet espace, car les donn�es recherch�es de ma base ont ce m�me espace. Donc si je le retire, il est certain que ma requ�te ne fonctionnera pas.

  4. #4
    Membre �m�rite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par d�faut
    Citation Envoy� par xtranaz Voir le message
    non je souhaite justement garder cet espace, car les donn�es recherch�es de ma base ont ce m�me espace. Donc si je le retire, il est certain que ma requ�te ne fonctionnera pas.
    alors je ne comprend plus .
    en fait je suis partit de �a

    Citation Envoy� par xtranaz Voir le message
    .....Cette variable contient un espace (transform� en %20 dans l'URL). Cette m�me variable sert pour une requ�te SQL. J'ai tout v�rifi� avec une variable sans espace, tout fonctionne. Mais d�s que la variable a un espace, la requ�te ne fonctionne pas. Pas de message d'erreur, mais une r�ponse vide.

  5. #5
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    10
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 10
    Par d�faut
    D�sol� je me suis mal exprim�. J'ai test� avec des variables sans espaces pour v�rifier que mon code �tait bon. Il serait pr�f�rable pour moi de garder ces espaces si cela est possible. Mon code fonctionne correctement sans espace et j'aimerai qu'il fonctionne �galement avec.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    F�vrier 2008
    Messages
    34
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2008
    Messages : 34
    Par d�faut
    quand tu retiresla variable remplace l'espace par un underscore
    ca doit etre str replace je crois

  7. #7
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    F�vrier 2008
    Messages
    34
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2008
    Messages : 34
    Par d�faut
    ca fait erreur 404 ton lien

  9. #9
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par d�faut
    il marche tr�s bien chez moi en clair:
    string urldecode ( string $str )

    D�code toutes les s�quences %## et les remplace par leur valeur.

  10. #10
    Membre �prouv�

    Inscrit en
    Janvier 2006
    Messages
    969
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Par d�faut
    Quand je vois $_GET[nom_console] au lieu de $_GET['nom_console'] j'ai l'impression que ton probl�me peut venir des magic quotes.
    Je ma�trise mal cette probl�matique, mais tu devrais chercher dans cette direction.
    Tu peux aussi essayer (c'est recommand� syst�matiquement)
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    $sql = mysql_query("SELECT * FROM jeu WHERE nom_console='{mysql_real_escape_string($_GET[nom_console])}'")

  11. #11
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    10
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 10
    Par d�faut
    Merci de votre aide � tous!!!
    J'ai d�cider de ne pas me prendre la t�te et de mettre des underscore � la place des espaces, puis, lors de l'affichage, remplacer les underscore par les espaces.
    Encore merci et bonne continuation � vous!!!

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Appel d'une proc�dure PL/SQL contenue dans une variable
    Par daniel.lemuet dans le forum PL/SQL
    R�ponses: 2
    Dernier message: 21/01/2010, 17h48
  2. Placer des donn�es de SQL serveur dans une variable
    Par Dohmaker dans le forum VB.NET
    R�ponses: 11
    Dernier message: 19/02/2008, 22h18
  3. ins�rer des c�tes dans une variable pl/sql
    Par illegalsene dans le forum Langage SQL
    R�ponses: 1
    Dernier message: 24/01/2007, 14h20
  4. Transqct-SQL : Redirection dans une variable
    Par Chmog dans le forum Langage SQL
    R�ponses: 1
    Dernier message: 29/11/2006, 11h29
  5. R�ponses: 3
    Dernier message: 22/07/2005, 12h12

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