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 :

input submit ne fonctionne pas


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Prof
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Prof

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Par défaut input submit ne fonctionne pas
    Bonsoir à tous,

    Je suis débutant, j'ai essayé de faire fonctionner un formulaire ou il faut indiquer son nom et son commentaire pour mon site seulement j'ai un problème.

    voilà, je demande à l'utilisateur d'indiquer son nom et commentaire et je n'arrive pas à récupérer les variable.

    Quand je fais les instruction suivante, rien ne ce passe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $nom=$_POST["Nom"];
    echo $_POST["envoyer"];
    echo $nom;

    J'ai écris :

    <form method="post" action= "">




    L'objectif de ce code est de créer un gestionnaire de commentaire pour des articles.
    (Le code est encore en train d'être construit, le problème ici c'est jusque que lorsque je clique sur mon bouton, la page s'actualise et aucune variable n'est présente dans 'Nom' et 'Commentaire'. Voilà.


    voici le code qui ne fonctionne pas :


    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
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
     
    <?php
     
    	$hostname = "*****.mysql.db";
    	$user     = "*****";
    	$password = "*****";
    	$nom_base_donnees = "*****";
     
     
    	$conn = mysql_pconnect($hostname, $user, $password) or die(mysql_error());
     
     
    	mysql_select_db($nom_base_donnees, $conn);
    ?>
    <?php
     
    	$req = "SELECT * FROM Listecom";
     
    	$dataset = mysql_query($req);
     
    	while ($row = mysql_fetch_array($dataset, MYSQL_NUM)) {
     
     
    	printf("%s",$row[0]);
    	echo ' à dit :';
    	echo '<br />';
    	printf("%s",$row[1]);
    	echo '<br />';
    	echo '---------------------------';
    	echo '<br />';
    	}
     
     
     
    ?>
     
     
    <div>
    <form method="post" action= "">
    <p>
    <p>Votre nom ou pseudo</p><br />
    <input name="Nom" type="text" size="34" />
    </p>
    <p>
     <p>Votre commentaire</p><br />
     <textarea name="Commentaire" cols="35" rows="6"></textarea>
    </p>
    <p><input type="submit" name= "envoyer" value="Envoyer votre commentaire" /></p>
    </form>
    </div>
     
     
     
     
     
    <?php
    $nom=$_POST["Nom"];
    echo $_POST["envoyer"];
    echo $nom;
     
     
     
    // ---------->>>>>>>>>Je n'arrive pas entrer dans le if : 
     
    if (isset($_POST["envoyer"])){
     
    			if ( isset($_POST["Commentaire"]) && !empty($_POST["Commentaire"])){
     
    					// lancement de la requete
     
    					echo $_POST["Nom"];
     
    					$nom = $_POST["Nom"];
     
    					echo $nom;
    					$commentaire = $_POST["Commentaire"];
    					$sql = 'INSERT INTO Listecom VALUES ("'.$Nom.'" , "je suis un commentaire")';
     
    					// on insere le tuple (mysql_query) et au cas où, on écrira un petit message d'erreur si la requête ne se passe pas bien (or die)
    					mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
     
    					// on ferme la connexion à la base
    					mysql_close();						
     
    			}else{
    				$erreur = 'vous devez ecrire quelque chose pour valider';
     
    			}
    }
    if (isset($erreur)){echo $erreur;}
     
    mysql_close();
    ?>

  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
    Par défaut
    Le code que tu nous montres est fonctionnel : on rentre bien dans le if quand on valide le formulaire.

    Abandonne l'extension mysql_* et passe à PDO, ce que tu fais avec la base de données ça ne va pas du tout.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier
    Homme Profil pro
    Prof
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Prof

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Par défaut Re
    Citation Envoyé par sabotage Voir le message
    Le code que tu nous montres est fonctionnel : on rentre bien dans le if quand on valide le formulaire.

    Abandonne l'extension mysql_* et passe à PDO, ce que tu fais avec la base de données ça ne va pas du tout.

    Tout d'abord merci pour ta réponse, je tiens compte de ta remarque mais je veux comprendre pourquoi mon code ne fonctionne pas pour apprendre.

    Le code se trouve dans un fichier commentaire.php...

    Vraiment sur le site, quand on envoie le formulaire je ne rentre pas dans le if...



    Je vais te donner le lien de mon site ou se trouve l'article qui contient les commentaires en messages perso.
    Tu verras qu'on ne peut pas ajouter de commentaire.
    Enfin même les 'echo etc...' ne s'affichent pas !
    Les variables soumissent par le formulaire sur le site ne fonctionne pas.

  4. #4
    Membre régulier
    Homme Profil pro
    Prof
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Prof

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Par défaut Re Submit
    Bonsoir,

    J'ai essayé de vous envoyer un message en privé mais ça ne fonctionne pas.

    Je vous envoi le code ici.

    Malheureusement j'ai mi des "echo 'je suis là" dans les if mais ils ne s'affichent pas sur la page web, pourquoi ?

    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
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
     
     
    <?php
    	// ceci est le fichier connexion.php
    	// On définit les 4 variables nécessaires à la connexion MySQL :
    	$hostname = "x";
    	$user     = "x";
    	$password = "x";
    	$nom_base_donnees = "x";
     
    	// Connexion permanente au serveur MySQL : mysql_Pconnect
    	$conn = mysql_pconnect($hostname, $user, $password) or die(mysql_error());
     
    	// Choix de la base sur laquelle travailler
    	mysql_select_db($nom_base_donnees, $conn);
    ?>
    <?php
     
     
    	// on fait les opérations nécessaires
    	$req = "SELECT * FROM Listecom";
     
    	$dataset = mysql_query($req);
    	//$piece = mysql_fetch_array($dataset);
    	while ($row = mysql_fetch_array($dataset, MYSQL_NUM)) {
     
     
    	printf("%s",$row[0]);
    	echo ' à dit :';
    	echo '<br />';
    	printf("%s",$row[1]);
    	echo '<br />';
    	echo '---------------------------';
    	echo '<br />';
    	}
     
    	// maintenant que la requête a été effectuée, on peut refermer la connexion
    	//mysql_close();
    ?>
     
     
     
    <?php
    $nom=$_POST["Nom"];
    echo $_POST["envoyer"];
    echo $nom;
     
    if (isset($_POST["envoyer"])){
    	echo 'je suis là 1';
     
    			if ( isset($_POST["Commentaire"]) && !empty($_POST["Commentaire"])){
    					echo 'je suis là 2';
    					// lancement de la requete
     
    					echo $_POST["Nom"];
     
    					$nom = $_POST["Nom"];
     
    					echo $nom;
    					$commentaire = $_POST["Commentaire"];
    					$sql = 'INSERT INTO Listecom VALUES ("'.$Nom.'" , "je suis un commentaire")';
     
    					// on insere le tuple (mysql_query) et au cas où, on écrira un petit message d'erreur si la requête ne se passe pas bien (or die)
    					mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
     
    					// on ferme la connexion à la base
    					mysql_close();						
     
    			}else{
    				$erreur = 'vous devez ecrire quelque chose pour valider';
     
    			}
    }
    if (isset($erreur)){echo $erreur;}
     
    ?>
     
     
     
    <div>
    <form method="post" action= ''>
    <p>
    <p>Votre nom ou pseudo</p><br />
    <input name="Nom" type="text" size="34" />
    </p>
    <p>
     <p>Votre commentaire</p><br />
     <textarea name="Commentaire" cols="35" rows="6"></textarea>
    </p>
    <p><input type="submit" name= "envoyer" value="Envoyer votre commentaire" /></p>
    </form>
    </div>

  5. #5
    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
    Par défaut
    Pour debuguer utiliser var_dump() plutôt que echo.
    est utile par exemple.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre régulier
    Homme Profil pro
    Prof
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Prof

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Par défaut Re Submit
    Le code fonctionne dans d'autre fichier php....

    Pourquoi ???

Discussions similaires

  1. Bouton submit ne fonctionne pas
    Par nessing dans le forum JDeveloper
    Réponses: 9
    Dernier message: 21/04/2014, 16h51
  2. le bouton submit ne fonctionne pas correctement
    Par joulnare18 dans le forum 4D
    Réponses: 18
    Dernier message: 02/01/2012, 19h22
  3. 2 boutons image submit ne fonctionnent pas avec IE
    Par diabli73 dans le forum Langage
    Réponses: 2
    Dernier message: 07/06/2011, 13h56
  4. [firefox] onchange submit ne fonctionne pas
    Par nicerico dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/09/2008, 17h27
  5. Submit ne fonctionne pas
    Par helios2092 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/05/2008, 14h48

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