[RESOLU] Problème d'envoie de formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Problème d'envoie de formulaire

Re: Problème d'envoie de formulaire

par Sylvestre » 14 juin 2019, 03:28

Salut Sylvestre, comment ça va ?

Je ne suis pas très fort moi-même, cependant je remarque certaines anomalies dans ton code. À première vue, il manque une requête. Vois-tu, si tu veux que ces informations s'incrivent dans une base de données il faut que tu en fasses la demande. Par exemple :
$req = $bdd->prepare('INSERT INTO table (nom, titre, texte ) VALUES (:nom, :titre, :texte) ;
$req->execute(array(
'nom' => $_POST['nom'],
'titre' => $_POST['titre'],
'texte' => $_POST['texte'] ));
évidemment tu remplaces table par le nom de ta table.

Deuxièmement je me demande pourquoi tu diriges l'action de ton formulaire vers une autre page (posteur.php) alors que tu commences le traitement du formulaire sur la même page.

Finalement , tu devrais sortir ton formulaire de ton code php.
D'après moi ton code devrait ressembler un peu à celui-là:

Code : Tout sélectionner

<?php include 'menu.php'?> <br> <?php include("datebase.php"); if(isset($_POST['formsend'])) { if((isset($_POST['pseudo'])) && (isset($_POST['titre'])) && (isset($_POST['texte']))) { $pseudo = htmlspecialchars($_POST['pseudo']); $titre = htmlspecialchars($_POST['titre']); $texte = htmlspecialchars($_POST['texte']); //la requête pour inclure les informations. Bien sûr tu dois remplacer table par le nom de ta table. $req=$bdd->prepare('INSERT INTO table (pseudo, titre, texte) VALUES (:pseudo, :titre, :texte)'); $req->execute(array( 'pseudo' => $pseudo, 'titre' => $titre, 'texte' => $texte )); } } ?> <form method="post" action=""> <input type="text" name="pseudo" id="pseudo" placeholder="Nom/Prénom :" required> <input type="text" name="titre" id="titre" placeholder="Titre :" required> <input type="text" name="texte" id="texte" placeholder="Texte :" required> <input type="submit" name="formsend" id="formsend"> </form>
Salut, très bien et toi ?

Je te remercie pour tes explication sa fonctionne mieux maintenant^^

En faite pour la pour la redirection je la redirigé vers cet même page, je suis vraiment pas doué

Je te remercie passe une bonne fin de soirée :D

Re: Problème d'envoie de formulaire

par j_saisrien » 14 juin 2019, 03:17

Salut Sylvestre, comment ça va ?

Je ne suis pas très fort moi-même, cependant je remarque certaines anomalies dans ton code. À première vue, il manque une requête. Vois-tu, si tu veux que ces informations s'incrivent dans une base de données il faut que tu en fasses la demande. Par exemple :
$req = $bdd->prepare('INSERT INTO table (nom, titre, texte ) VALUES (:nom, :titre, :texte) ;
$req->execute(array(
'nom' => $_POST['nom'],
'titre' => $_POST['titre'],
'texte' => $_POST['texte'] ));
évidemment tu remplaces table par le nom de ta table.

Deuxièmement je me demande pourquoi tu diriges l'action de ton formulaire vers une autre page (posteur.php) alors que tu commences le traitement du formulaire sur la même page.

Finalement , tu devrais sortir ton formulaire de ton code php.
D'après moi ton code devrait ressembler un peu à celui-là:

Code : Tout sélectionner

<?php include 'menu.php'?> <br> <?php include("datebase.php"); if(isset($_POST['formsend'])) { if((isset($_POST['pseudo'])) && (isset($_POST['titre'])) && (isset($_POST['texte']))) { $pseudo = htmlspecialchars($_POST['pseudo']); $titre = htmlspecialchars($_POST['titre']); $texte = htmlspecialchars($_POST['texte']); //la requête pour inclure les informations. Bien sûr tu dois remplacer table par le nom de ta table. $req=$bdd->prepare('INSERT INTO table (pseudo, titre, texte) VALUES (:pseudo, :titre, :texte)'); $req->execute(array( 'pseudo' => $pseudo, 'titre' => $titre, 'texte' => $texte )); } } ?> <form method="post" action=""> <input type="text" name="pseudo" id="pseudo" placeholder="Nom/Prénom :" required> <input type="text" name="titre" id="titre" placeholder="Titre :" required> <input type="text" name="texte" id="texte" placeholder="Texte :" required> <input type="submit" name="formsend" id="formsend"> </form>

Re: Problème d'envoie de formulaire

par Sylvestre » 14 juin 2019, 00:59

<input type="text"
Merci j'ai modifier mais sa fait toujours la même chose

Re: Problème d'envoie de formulaire

par Sylvestre » 14 juin 2019, 00:59

Rien dans le code que tu indiques ne fait de traitement avec ta base de données donc c'est un peu difficile de t'aider :-D
Et je peux régler sa comment ?

Re: Problème d'envoie de formulaire

par or 1 » 14 juin 2019, 00:41

<input type="text"

Re: Problème d'envoie de formulaire

par @rthur » 14 juin 2019, 00:23

Rien dans le code que tu indiques ne fait de traitement avec ta base de données donc c'est un peu difficile de t'aider :-D

Problème d'envoie de formulaire

par Sylvestre » 14 juin 2019, 00:15

Bonjour,
Voila sa fait 2/3 jours que je me bat pour savoir qu'elle est le problème, j'ai fuiné un peu partout sans résultat.
Je suis pas très doué donc voila.

Voici mes codages :

Code : Tout sélectionner

<center> <?php include 'menu.php'?> <br> <?php include("datebase.php"); if((isset($_POST['pseudo'])) && (isset($_POST['titre'])) && (isset($_POST['texte']))) { $pseudo = $_POST['pseudo']; $titre = $_POST['titre']; $texte = $_POST['texte']; echo $pseudo; echo $titre; echo $texte; } else { ?> <form method="post" action="posteur.php"> <input type="text" name="pseudo" id="pseudo" placeholder="Nom/Prénom :" required> <input type="text" name="titre" id="titre" placeholder="Titre :" required> <input type="text" name="texte" id="texte" placeholder="Texte :" required> <input type="submit" name="formsend" id="formsend"> </form> <?php } ?> </center>
Et il met impossible d'envoyé jusqu'à la base de donnée, elle est bien connecté mais je ne sais pas

Mercii :D