Reputation: 13
-I just want for post user
-I have two tables (users, post) , i don't know make system post // code html form and textarea
<form method="POST" autocomplete="off" action="">
<textarea name="none" class="textarea" placeholder="Quelle est votre question ?"></textarea>
<select>
<option value="filiére" selected="1">Filiére : Accueil</option>
<option value="smp">smpc</option>
<option value="smp">smia</option>
<option value="smp">svt</option>
<option value="smp">smp</option>
<option value="smp">smc</option>
<option value="smp">sma</option>
<option value="smp">smi</option>
<option value="smp">svi</option>
</select>
<select>
<option value="accueil" selected="1">Semestre : Accueil</option>
<option value="s1">s1</option>
<option value="s2">s2</option>
<option value="s3">s3</option>
<option value="s4">s4</option>
<option value="s5">s5</option>
<option value="s6">s6</option>
</select>
<button class="btn-ajouter" type="submit" name="ajouter" value="ajouter">ajouter</button>
</form>
//code php
$userId = $_SESSION['user_id'];
if(isset($_POST['ajouter']))
{
$post = $_POST['none'];
$stmt=$connect->prepare('INSERT INTO
publications(id_auteur,date_post,post) VALUES(?,NOW(),?) ');
$stmt->execute(array(
':id_auteur' => $userId,
':post' => $post
));
}
code ... Fatal error PDO : Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined
Upvotes: 1
Views: 44
Reputation: 33813
With a named placeholder
$stmt=$connect->prepare('INSERT INTO
publications(id_auteur,date_post,post) VALUES( :id_auteur, NOW(),:post ) ');
$stmt->execute(array(
':id_auteur' => $userId,
':post' => $post
));
With ?
as placeholder
$stmt=$connect->prepare('INSERT INTO
publications(id_auteur,date_post,post) VALUES( ?, NOW(),? ) ');
$stmt->execute(array(
1 => $userId,
2 => $post
));
Upvotes: 4