erreur
bonjour,
déjàmerci pour les réponse à mon précédent post car maintenant cela fonctionne mais j'ai une erreur sur un autre fichier
http://www.lephpfacile.com/wall/lire_wall.php?wall=1805
Bonjour,
tu as tout simplement oublier un ; avant $req=.....
tu devrais aussi peut être vérifier si le formulaire à été envoie avant d'insérer quelque chose dans ta BDD...
if(isset($_POST['Valider']) ){
$Nom=$_POST['Nom'];
$Prenom=$_POST['Prenom'];
$Commentaire=$_POST['Commentaire'];
$Photo=$_POST['Photo'];
include("bdd.conf");
$sql="Insert into acteur SET
Nom='$Nom',
Prenom='$Prenom',
Commentaire='$Commentaire',
Photo='Photo'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
}
merci j'ai ajouté ta vérif ... je n'ai plus d'erreur mais la base n'est pas alimentée ...
voici le bdd conf
<?
$serveur = "localhost";
$login = "root";
$pass = "130358";
$base = "cinema";
$db = mysql_connect($serveur,$login,$pass);
$connection = mysql_select_db("$base",$db);
?>
et la strcuture de la table
# Structure de la table `acteur`
#
CREATE TABLE `acteur` (
`ID_acteur` tinyint(4) NOT NULL default '0',
`Nom` text NOT NULL,
`Prenom` text NOT NULL,
`Commentaire` text NOT NULL,
`Photo` text NOT NULL
) TYPE=MyISAM;
#
# Contenu de la table `acteur`
#
Salut,
dans sont dernier code Sedilbur a oublier un $ devant photo dans la requete sql, tu as copier le code ......
Une petite critique quand a ta base de donnée
les champ Nom Prenom et Photo sont définit en text ce qui a mon avis n'est le mieux je pense qu'un varchar 50 ou 100 est emplement suffisant (un prenom ou un nom de 50 caractère c'est pas nan
)
pour ta photo si c'est lien (c'est bien le cas ?) alors un petit peu plus grand pourquoi pas.
Il en faut peu pour être heureux !!!!!
j'ai bien ajouté le "$" manquant mais rien n'y fait
je vais modifier les champs selon ton conseil
re,
Le problème vient de ta requete sql comme sa se sera mieux :
<?php
$sql='INSERT INTO acteur VALUES (Nom="',$Nom,'", Prenom="',$Prenom,'", Commentaire="',$Commentaire,'", Photo="',$Photo,'"';
?>
relis bien
CE cours, Le SET c'est pour update pas pour insert
c'est pour sa que ta requete foire
[Message modifié le 01/11/2004 à 15:46 par LA GLOBULE]
Il en faut peu pour être heureux !!!!!
j'ai utilisé ta solution mais j'ai une erreur
Parse error: parse error, unexpected ',' in c:\program files\easyphp1-7\www\cinema\insertacteur.php on line 20
$db = mysql_connect($serveur,$login,$pass);
$connection = mysql_select_db("$base",$db);
if(isset($_POST['Valider']) ){
$Nom=$_POST['Nom'];
$Prenom=$_POST['Prenom'];
$Commentaire=$_POST['Commentaire'];
$Photo=$_POST['Photo'];
include("bdd.conf");
$sql='INSERT INTO acteur VALUES (Nom="',$Nom,'", Prenom="',$Prenom,'", Commentaire="',$Commentaire,'", Photo="',$Photo,'"';
$req = mysql_query("$sql") or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
}
?>
<?
include("acteur.php");
?>
alors que celui-ci marche
<?
$Titre=$_POST['Titre'];
$Acteur1=$_POST['Acteur1'];
$Acteur2=$_POST['Acteur2'];
$Acteur3=$_POST['Acteur3'];
$Acteur4=$_POST['Acteur4'];
$Acteur5=$_POST['Acteur5'];
$Realisateur=$_POST['Realisateur'];
$Annee=$_POST['Annee'];
$Affiche=$_POST['Affiche'];
$Sinopsys=$_POST['Sinopsys'];
include("bdd.conf");
$req="Insert into film SET
Titre='$Titre',
Acteur1='$Acteur1',
Acteur2='$Acteur2',
Acteur3='$Acteur3',
Acteur4='$Acteur4',
Acteur5='$Acteur5',
Realisateur='$Realisateur',
Annee='$Annee',
Affiche='$Affiche',
Sinopsys ='$Sinopsys '
";
$requete=MYSQL_QUERY("$req") or die ('<br><br><font color=red face=arial size=1>la requete : '.$req.'<br> a rencontrée le problème suivant :<br>'.mysql_error().'</font><br><br>');
flush();
include("index.php");
?>
si je remplace SET par VALUE j'ai alors une erreur
JE dois me mélanger dans les " et les '
suis trop nul ...
pourquoi écrire
Nom="',$Nom,
et pas simplement
Nom=$Nom,
Si tu trouves ca un peu trop compliqué mon lapin tu peux :
Essais comme ca cheri !
$sql = 'INSERT INTO acteur (nom,prenom,commentaire,photo) VALUES
(
"'.$nom.'",
"'.$prenom.'",
"'.$commentaire.'",
"'.$photo.'"
)';
Tu comprends poulet ?
Ciao ;)
I am singing in the rain , I am happy again !!