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 :

Problème de variables $_GET


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 21
    Par défaut Problème de variables $_GET
    Bonjour,

    Je développe un formulaire de contact avec un script PHP unique mais mis en ligne sur différentes pages. Pour cela j'utilise la fonction include().

    Voici le script des pages de contact :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    if (isset($_GET['mail']))
    {
         include('http://www.triangle.pro/sites/parking.php?domaine='.$_SERVER['HTTP_HOST'].'&mail='.$_GET['mail'].'&sujet='.$_GET['sujet'].'&message='.$_GET['message'].'');
    }
    else
    {
    	include('http://www.triangle.pro/sites/parking.php?domaine='.$_SERVER['HTTP_HOST'].'');
    }
    ?>
    Et le script de la page parking.php :

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    <?php
    if (isset($_GET['mail']))
    { 
         mail('geoffrey.hissel@numericable.fr', ''.$_GET['sujet'].'', 'Message laissé par '.$_GET['mail'].' :
    
    '.$_GET['message'].'');
    }
    ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <META NAME="Keywords" CONTENT="nom de domaine, domaine, domaines, acheter domaine, acheter domaines, acheter nom de domaine, louer domaine, louer nom de domaine">
    <title>Site en construction</title>
    <style type="text/css">
    #cadre
    {
    	position:absolute;
    	top:50%;
    	left:50%;
    	height:500px;
    	width:600px;
    	margin-left:-300px;
    	margin-top:-250px;
    	border:1px solid #555;
    }
    #centre
    {
    	position:absolute;
    	top:50%;
    	left:50%;
    	height:400px;
    	width:400px;
    	margin-left:-200px;
    	margin-top:-200px;
    	text-align:justify;
    	padding:10px;
    	font-family:Arial, Helvetica, sans-serif;
    	font-size:14px;
    	color:#555;
    }
    </style>
    </head>
     
    <body>
    <div id="cadre">
    <form id="centre" action="<?php echo $PHP_SELF ?>" method="get">
    Bienvenue,<br /><br />
    Ce nom de domaine à été réservé pour la création d’un site thématique en cours de production.<br />
    Néanmoins, si ce domaine vous intéresse, nous restons ouvert à toutes propositions de location et redirection.<br />
    <br />
    Cordialement<br />
    Jacques Millet<br />
    <br /><br />
    <label>Mail :&nbsp;&nbsp;
      <input type="text" name="mail" id="mail" style="width:300px;" />
    </label>
    <br />
    <label>Sujet :
      <input type="text" name="sujet" id="sujet" style="width:300px;" value="A propos du nom de domaine : <?php echo  $_GET['domaine'] ?>" />
    </label>
    <br />
    <br />
    <label>
      <textarea name="message" id="message" style="height:120px; width:380px;">Votre message</textarea>
    </label>
    <br /><br />
    <input type="hidden" />
    <label>
      <input type="submit" name="button" id="button" value="Envoyer" />
    </label>
    </form>
    </div>
    </body>
    </html>
    Les variables réceptionnées par la fonction mail() ressemblent à ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    www.aloe-vera.pro/?mail=adresse%40hotmail.com&sujet=A+propos+du+nom+de+domaine+%3A+%27&message=Votre+message&button=Envoyer
    Apparemment le script php ne prend en compte QUE les valeurs des variables avant le premier '+' qui séparent chaque mots.

    J'ai fais le test de mettre des '_' entre les mots et cela fonctionne, donc le problème vient bien des '+' dans les variables $_GET.

    Auriez-vous une solution à ce problème ?

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    tu pourrais essayer avec un htmlentities
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

Discussions similaires

  1. [VB.NET] Probléme de variable
    Par Silvia12 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/03/2005, 11h51
  2. [Debutant(e)]problème de variable d'environnement
    Par tolsam dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/08/2004, 19h08
  3. Problème de variable
    Par vp dans le forum Windows
    Réponses: 2
    Dernier message: 14/05/2004, 16h27
  4. [Débutant] Problème de variables
    Par bonnefr dans le forum SWT/JFace
    Réponses: 9
    Dernier message: 12/05/2004, 17h41
  5. [servlet]problème de variable jamais nulle
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/03/2004, 09h31

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