Page 1 sur 1

Probleme de INSERT INTO

Posté : 04 oct. 2013, 21:48
par rouboux
Bonsoir,

J'ai un probleme... rien ne s'insert dans ma BDD :( mais le message "tp : ok" s'affiche... aidez moi svp
[...]<br><?php
$numero=$_POST['numero'];
$titre=$_POST['titre'];
$decription=$_POST['description'];
$etat=$_POST['etat'];
$fini=$_POST['fini'];
 
if($numero&&$titre)
{
$pdo = new PDO([...]);
$result = $pdo->prepare('INSERT INTO table (numero, titre, decription, etat, fini) VALUES(:numero, :titre, :decription, :etat, :fini)');
 $result->execute(array(
        'numero' => $numero,
        'titre' => $titre,
        'decription' => $decription,
        'etat' => $etat,
        'fini' => $fini,
        ));
echo 'tp : ok';
unset($pdo);
}else {$msg2="Veuillez saisir tous les champs !";
}
 
}}
}else{
echo 'Erreur.';
die();}
?>
 
<html>
<head>
  <meta charset="UTF-8">
  <title>Créer</title>
</head>
 
<body>
<div style="
Text-align:center;
Width:90%;
Padding-top:20px;
Height:300px;
">
<br><br>
<?php
echo $msg2;
?>
<br><br>
<form method="POST" action="creer.php">
<p>Numéro :</p>
<input type="text" name="numero">
<p>Titre :</p>
<input type="text" name="titre">
<p>Description :</p>
<input type="text" name="description">
<p>État :</p>
<input type="text" name="etat">
<p>Fini :</p>
<input type="text" name="fini">
<br><br>
<input type="submit" value="Tp" name="submit">
</form>

Re: Probleme de INSERT INTO

Posté : 05 oct. 2013, 01:46
par moogli
salut,


il faut gérer les erreur. table étant un mot clef sql je pense que ton code retourne une erreur ;)
http://fr2.php.net/manual/fr/pdo.error-handling.php

@+

Re: Probleme de INSERT INTO

Posté : 05 oct. 2013, 08:31
par sirakawa
Autre vision:
Moogli a raison pour table : on a déjà vu ce problème.
De plus, echo 'ok'; n'est subordonné à aucun test sur resultat....
Au passage, que skignifie tp : ok ?

Re: Probleme de INSERT INTO

Posté : 06 oct. 2013, 00:07
par russe1984
<?php
if(isset($_POST['numero']) and isset($_POST['titre']) and isset($_POST['description']) and isset($_POST['etat']) and isset($_POST['fini']))
{
$numero=$_POST['numero'];
$titre=$_POST['titre'];
$description=$_POST['description'];
$etat=$_POST['etat'];
$fini=$_POST['fini'];

if($numero<>"" and $titre<>"" and $description<>"" and $etat<>"" and $fini<>"")
{

include("config.php");//connecte pdo
try { 
$data = array('numero' => $numero,'titre' => $titre,'description' => $description,'etat' => $etat,'fini' => $fini);
$result=$pdo->prepare("INSERT INTO `table` (numero,titre,description,etat,fini) values (:numero,:titre,:description,:etat,:fini)");
$result->execute($data);
$pdo=null;
}  
catch(PDOException $e) {  
    print "Erreur!: " . $e->getMessage() . "<br/>\n"; 
   die();  
}
echo 'tp : ok';

}
else
{
echo "Veuillez saisir tous les champs !";
}
}
?>
<div style="text-align:center;">
<form method="POST" action="index.php" enctype="multipart/form-data">
<p>Numéro :</p>
<input type="text" name="numero">
<p>Titre :</p>
<input type="text" name="titre">
<p>Description :</p>
<input type="text" name="description">
<p>État :</p>
<input type="text" name="etat">
<p>Fini :</p>
<input type="text" name="fini">
<br><br>
<input type="submit" value="Tp" name="submit">
</form>
 </div>