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 :

Interprétation de variable


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 10
    Points : 10
    Points
    10
    Par défaut Interprétation de variable
    bien le bonjour, je travail sur un petit site et j'ai un souci quand a l'interprétation d'une variable voila mon code:


    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
    <?php
    include "config.php";
    // Include ezSQL core
    include_once "./shared/ez_sql_core.php";
    // Include ezSQL database specific component
    include_once "ez_sql_mysql.php";
    $article = 'acceuil';
    if ( isset($HTTP_POST_VARS['article']) || isset($HTTP_GET_VARS['article']) ) 
    {
    $article = ( isset($HTTP_POST_VARS['article'])) ? $HTTP_POST_VARS['article'] : $HTTP_GET_VARS['article']; //on assigne $article
    }
    $key = $article;
    if(isset($_REQUEST['Nom']) || isset($_REQUEST['e-mail'])){
    	$Nom = $_POST['Nom'];
    	$mail = $_POST['e-mail'];
    	$comm = $_POST['body'];
    	$db = new ezSQL_mysql($user, $pass, $database, $host);
    	$sql_comm = "INSERT INTO `commentaires` (`article` ,`Nom` ,`e-mail` ,`commentaire`)VALUES ('$key', '$Nom', '$mail', '$comm');";
    	$db->query($sql_comm);
    	echo ($sql_comm);
    	//header ('Location: comm_aff.php?article='.$article);
    } else{ 
    	echo ('<html><body>');
    	echo ('<form action="comm_post.php?article=$article" method="post" name="comm">');
    	echo ('Nom:<input type="text" name="Nom" size="15" /><br>');
    	echo ('Mail:<input type="text" name="e-mail" size="15" /><br>');
    	echo ('Ton texte<br><textarea id="body" name="body" cols="50" rows="5"></textarea><br>');
    	echo ('<input type="submit" name="sub" value="Envoyer">');
    	echo ('</form>');
    }
    echo ('		</body>
    		</html>');		
    ?>
    en exécutant, il me mais dans ma requête (comm_post?article=maroro):

    INSERT INTO `commentaires` (`article` ,`Nom` ,`e-mail` ,`commentaire`)VALUES ('$article', 'Nom', 'mail', 'mon comm');

    Que faire, ou est la faute s'il vous plait?


    bien apres quleque recherche suplementaire sa marche, la solution pour les interesser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ...} else{ 
    	echo ('<html><body>');
    	echo ('<form action="comm_post.php?article='.$article.'" method="post" name="comm">');
    	echo ('Nom:<input type="text" name="Nom" size="15" /><br>');
    	echo ('Mail:<input type="text" name="e-mail" size="15" /><br>');
    	echo ('Ton texte<br><textarea id="body" name="body" cols="50" rows="5"></textarea><br>');
    	echo ('<input type="submit" name="sub" value="Envoyer">');
    	echo ('</form>');
    }
    echo ('		</body>
    		</html>');		
    ?>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    les variables ne sont pas interpretés dans les guillemets simples :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<form action="comm_post.php?article=' . $article .'" method="post" name="comm">';
    Pour l'avenir, pour debuger, il t'aurait suffit d'afficher la valeur de $article puis de $HTTP_GET_VARS['article'] pour constater que tu recevais "$article"

    Pour le reste de ton code, depuis PHP4.2 de mémoire, on n'utilise plus $HTTP_GET_VARS et $HTTP_POST_VARS mais $_GET et $_POST donc si tu es en PHP5, met ton code au gout du jour.

    Tu peux utiliser $_REQUEST pour recuperer indifferement la variable venant de POST ou de GET.

    Et si tu veux ajouter une variable dans un formulaire, c'est plus logique de l'ajouter dans un champ hidden que de la passer dans l'url.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    j'avais pas penser au champ hidden ^^'


    j'ai appris sous php4 les petite notion de base que j'ai et après je me suis mit au java et me suis pas tenue au courant de l'évolution de ce langage merci de la parenthèse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FORMS10g] Interprétation des variables globales
    Par pompidouwa dans le forum Forms
    Réponses: 3
    Dernier message: 09/01/2008, 11h28
  2. Interpréter une variable contenue dans un fichier texte
    Par frederic_s dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 11/10/2007, 14h06
  3. Réponses: 5
    Dernier message: 19/07/2007, 13h06
  4. Non interprétation des variables
    Par usf70 dans le forum wxPython
    Réponses: 3
    Dernier message: 09/05/2007, 13h21
  5. remplacement/interprétation de variables
    Par Le fut dans le forum Shell et commandes GNU
    Réponses: 15
    Dernier message: 25/01/2007, 12h40

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