Impossible insérer requête SQL ds script création Db en Php

sergio1236 Messages postés 11 Statut Membre -  
varley Messages postés 77 Statut Membre -
Bonjour,

Dans le cadre de la création d'un site web en PHP/Mysql ,avec le Serveur Xampp en localhost,
mon but c'est d'ajouter un blog au site web sachant que seul un administrateur est autorisé à le faire. Pour cela je souhaiterais insérer des données dans la table Blog.
Mais impossible d'exécuter la requête " INSERT TO "des données dans la table Blog : message d'erreur " Il y a une erreur dans votre requête de création de la table Blog :

INSERT INTO Blog( titre, texte,date_blog) VALUES ('lklkl', 'hyhy', '2013-06-28 05:12:15')

Je peux créer la requête directement dans PhpMyAdmin mais mon superviseur veut la tester en localhost sur son PC.

Merci d'avance pour votre aide

try
{
$pdo = new PDO('mysql:host=localhost', 'root', '');
catch (PDOException $e) {
die( "Erreur !: " . $e->getMessage() );

$requete = 'CREATE TABLE Blog (
id_blog INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
titre VARCHAR(30) NOT NULL,
texte VARCHAR(500) NOT NULL,
date_blog DATETIME NOT NULL)';

$requete= "INSERT INTO Blog( titre, texte,date_blog) VALUES ('lklkl', 'hyhy', '2013-06-28 05:12:15')";

if($pdo->exec($requete) === FALSE)
{
echo 'Il y a une erreur dans votre requête de création de la table Blog ';
echo $requete;
exit();
}
echo'Table Blog créée <br/>';
A voir également:

3 réponses

varley Messages postés 77 Statut Membre 12
 
bonjour!

l'erreur s situe au nivo des attributs de values

les attributs de values doivent etre des variables par exemple:$lklkl

INSERT INTO Blog( titre, texte,date_blog) VALUES ('lklkl', 'hyhy', '2013-06-28 05:12:15')
0
sergio1236 Messages postés 11 Statut Membre
 
J'ai trouvé , voici la solution :
j'ai rajouté à la fin :
if($nbinsert = $pdo->exec($requete) === FALSE)..........
La méthode exec() de l'objet $pdo est employée pour exécuter des requêtes SQL qui ne renvoient pas à proprement parler un résultat
(INSERT, DELETE, UPDATE, DROP) mais qui modifient les données contenues dans la BD. Cette méthode renvoie le nombre de lignes (enregistrements) affectées par la requête (donc un nombre qui peut être 0 !).
Par contre la valeur renvoyée en cas d'échec de la requête est la valeur booléenne false.Pour ne pas confondre les 2 cas il est nécessaire d'utiliser l'opérateur de comparaison de type === qui compare
en plus de la valeur renvoyée, son type ! Il permet donc de ne pas assimiler une valeur nulle( de type nombre ou chaîne) à la valeur booléenne false */

$requete = 'CREATE TABLE Blog (
id_blog INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
titre VARCHAR(30) NOT NULL,
texte VARCHAR(500) NOT NULL,
date_blog DATETIME NOT NULL)';

if($pdo->exec($requete) === FALSE)
{
echo 'Il y a une erreur dans votre requête de création de la table Blog ';
echo $requete;
exit();
}
echo'Table Blog créée <br/>';

$requete = "INSERT INTO blog (titre,texte,date_blog) values
('salut','coucou','2013-06-01 17:14:10') ";

if($nbinsert = $pdo->exec($requete) === FALSE)
{
echo 'Il y a une erreur dans votre requête d\'insertion dans la table Livres Empruntés .';
echo $requete;
exit();
}
0
varley Messages postés 77 Statut Membre 12
 
ok
0