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 -
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/>';
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:
- Impossible insérer requête SQL ds script création Db en Php
- Insérer video powerpoint - Guide
- Insérer signature word - Guide
- Creation compte gmail - Guide
- Insérer liste déroulante excel - Guide
- Création site web - Guide
3 réponses
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')
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')
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();
}
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();
}