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>
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] <?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>
[/code]