Probleme avec les transactions

monaa Messages postés 104 Statut Membre -  
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   -
bjr à ts
je dispose de 9 tables suivantes sur mysql
Table article (id , source_id, type_id, collection, parution, titre, acquisition, lien, observation, prix, pertinence, projet)
Table type (id, nom)
Table source (id, nom)
Table auteur(id, nom)
Table mot (id, cle)
Table rangement (id, localisation)
Table article_auteur (id, auteur_ id, article_ id_)
Table article_mot (id, article_id_, mot _id_)
Table article_rangement (id, article_id, article_rangement)

j'utlise les transactions pour faire des insert dans celles ci a partir d'un formulaire saisie_article.php :
(excusez moi tt ces scriptscela sont1 peu long)
<html>
<head>
<title>:: saisie article::</title>
</head>
<body>
<h2>Inserer un nouvel article</h2>
<form action="insertion.php" method="post" name="form1">
<table width="536" border="0">
<tr>
<td width="134" class="Style63"><div align="right" class="Style57 Style58 Style60">
<div align="right">Titre : </div>
</div></td>
<td width="392"><div align="left"><span class="Style55">
<input name="titre" type="text" id="titre4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
</tr>
<tr>
<td width="134" class="Style63"><div align="right" class="Style57 Style58 Style60">
<div align="right">Type d'article : </div>
</div></td>
<td width="392"><div align="left"><span class="Style55">
<input name="type" type="text" id="titre4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
</tr>
<tr>
<td width="134" class="Style63"><div align="right" class="Style57 Style58 Style60">
<div align="right">Periodique : </div>
</div></td>
<td width="392"><div align="left"><span class="Style55">
<input name="source" type="text" id="titre4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
</tr>
<tr>
<td width="134" class="Style63"><div align="right" class="Style57 Style58 Style60">
<div align="right">Mot clés : </div>
</div></td>
<td width="392"><div align="left"><span class="Style55">
<input name="cle" type="text" id="titre4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
</tr>
<tr>
<td width="134" class="Style63"><div align="right" class="Style57 Style58 Style60">
<div align="right">Auteurs: </div>
</div></td>
<td width="392"><div align="left"><span class="Style55">
<input name="auteur" type="text" id="titre4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>

</tr>
<tr>
<td class="Style63"><div align="right" class="Style59">
<div align="right">
<p>Editeur : </p>
</div>
</div></td>
<td><div align="left"><span class="Style55">
<input name="editeur" type="text" id="titre5"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
<tr>
<td class="Style63"><div align="right" class="Style59">
<div align="right">
<p>ISSN : </p>
</div>
</div></td>
<td><div align="left"><span class="Style55">
<input name="localisation" type="text" id="titre5"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
<tr>
<td class="Style63"><div align="right" class="Style59">
<div align="right">
<p>Localisation : </p>
</div>
</div></td>
<td><div align="left"><span class="Style55">
<input name="localisation" type="text" id="titre5"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" />
</span>
</div></td>
</tr>
<tr>
<td class="Style63"><div align="right"> Projet :
</div>
<div align="right"></div></td>
<td class="Style55"><input name="projet" type="text" id="titre_agd4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" /></td>

</tr> <tr>
<td class="Style63"><div align="right"> Pertinence :
</div>
<div align="right"></div></td>
<td class="Style55"><input name="pertinence" type="text" id="titre_agd4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" /></td>

</tr>

<tr>
<td class="Style63"><div align="right"> Date d'acquisition:
</div>
<div align="right"></div></td>
<td class="Style55"><input name="acquisition" type="text" id="titre_agd4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" /></td>

</tr> <tr>
<td class="Style63"><div align="right"> Date de Publication:
</div>
<div align="right"></div></td>
<td class="Style55"><input name="parution" type="text" id="titre_agd4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" /></td>

</tr>

<tr>
<td class="Style63"><div align="right"> Collection :
</div>
<div align="right"></div></td>
<td class="Style55"><input name="collection" type="text" id="titre_agd4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" /></td>
</tr>
<tr>
<td class="Style63"><div align="right"> Prix :
</div>
<div align="right"></div></td>
<td class="Style55"><input name="prix" type="text" id="titre_agd4"
style="BACKGROUND-COLOR: #f7ffff; FONT-FAMILY: Verdana; FONT-SIZE: 8pt; " tabindex="2"
size="60" /></td>

</tr>
<tr>
<td width="134" class="Style63"><div align="right" class="Style57 Style58 Style60">
<div align="right">Résumé : </div>
</div></td>
<td width="392"><div align="left"><span class="Style55">
<textarea name="resume"></textarea>
</span>
</div></td>
</tr>
<tr>
<td class="Style63">  </td>
<td class="Style55"><div align="left">
<input name="Submit2" type="reset" class="Style55" value="Réinitialiser" />
<input name="Submit" type="submit" class="Style55" value="Enregistrer" />
</div></td>
</tr>
</table>
</form>
</body>
</html>

le script insertion.php est supposé insérer ces données ds les tables grâce aux les transactions mais j'ai l'erreur suivante :
Parse error: syntax error, unexpected T_STRING in C:\wamp\www\APPLI\insertion.php on line 38
c'est la ou il y'a start transaction;
<html>
<head>
<title>nouveau article</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
include('connect_db.php');
$id_article=mysql_insert_id();
$id_type=mysql_insert_id();
$id_source=mysql_insert_id();
$id_auteur=mysql_insert_id();
$id_mot=mysql_insert_id();
$id_rangement=mysql_insert_id();
$id_article_auteur=mysql_insert_id();
$id_article_mot=mysql_insert_id();
$id_article_rangement=mysql_insert_id();

if (isset($_POST['type'])) $titre=$_POST['type'];
if (isset($_POST['source'])) $pertinence=$_POST['source'];
if (isset($_POST['titre'])) $titre=$_POST['titre'];
if (isset($_POST['collection'])) $collection=$_POST['collection'];
if (isset($_POST['parution'])) $parution=$_POST['parution'];
if (isset($_POST['acquisition'])) $acquisition=$_POST['acquisition'];
if (isset($_POST['observation']))$observation=$_POST['observation'];
if (isset($_POST['prix'])) $prix=$_POST['prix'];
if (isset($_POST['projet'])) $projet=$_POST['projet'];
if (isset($_POST['pertinence'])) $pertinence=$_POST['pertinence'];
if (isset($_POST['auteur'])) $pertinence=$_POST['auteur'];
if (isset($_POST['editeur'])) $editeur=$_POST['editeur'];
if (isset($_POST['issn'])) $issn=$_POST['issn'];
if (isset($_POST['mot'])) $mot=$_POST['mot'];
if (isset($_POST['localisation'])) $localisation=$_POST['localisation'];

//debut de la transaction
start transaction;
insert into type (`id`, `nom`) values ('$id_type', '$type');
insert into source (`id`, `issn`,`nom`, `editeur`) values ('$id_source', '$issn','$source','$editeur');
insert into article_auteur (`id`, `article_id`,`auteur_id`) values ('$id_article_auteur', '$id_article','$id_auteur');
insert into auteur (`id`, `nom`) values ('$id_auteur', '$auteur');
insert into article_mot (`id`, `article_id`,`mot_id`) values ('$id_article_mot', '$id_article','$id_mot');
insert into mot (`id`, `cle`) values ('$id_mot', '$mot');
insert into article_rangement (`id`, `article_id`,`rangement_id`) values ('$id_article_rangement', '$id_article','$id_mot');
insert into rangement (`id`, `localisation`) values ('$id_rangement', '$localisation');
insert into article (`id`,`source_id`, `type_id`, `collation`,`parution`,`titre`, `acquisition`, `localisation`, `observation`, `prix`, `pertinence`, `projet`) values ('$id_article', '$id_source','$id_type', '$collection', '$parution','$titre', '$acquisition', '$localisation', '$observation','$prix', '$pertinence', '$projet' );

//fin de transaction
commit;

?>

</body>
</html>

je sais que les transactions permettent d'executer tt ou rien !!???
pouvez vs m'expliquez svp c'est koi le pb
mrçi bne jnée

8 réponses

gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
soit tu as fait du copié collé, soit tu comprend pas grand chose a la programmation...
tu nous donnes le code d'un formulaire... (dont on se fout royalement pour rester poli ;-)) et tu nous dit que y'a une erreur avec insertion.php sans nous donner le code du fichier en question...

hmmm...

→ chercher une virgule manquante, point virgule, parenthese pas fermée, accolade, .... (dans insertion.php) a la ligne 37 ou 38
0
monaa Messages postés 104 Statut Membre 1
 
rebjr a ts
ca fait plaisir un bo message comme ca dés le matin , c'est vrai je suis encore débutante (j'essaie de me former tte seule comme je peux)
sinon désolé j'avais oulblié de mettre le fichier mais j'avais réediter mon msg a nouvo
ds mon script il ny'a pas de () ni de ; manquantes

<html>
<head>
<title>nouveau article</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
include('connect_db.php');
$id_article=mysql_insert_id();
$id_type=mysql_insert_id();
$id_source=mysql_insert_id();
$id_auteur=mysql_insert_id();
$id_mot=mysql_insert_id();
$id_rangement=mysql_insert_id();
$id_article_auteur=mysql_insert_id();
$id_article_mot=mysql_insert_id();
$id_article_rangement=mysql_insert_id();

if (isset($_POST['type'])) $titre=$_POST['type'];
if (isset($_POST['source'])) $pertinence=$_POST['source'];
if (isset($_POST['titre'])) $titre=$_POST['titre'];
if (isset($_POST['collection'])) $collection=$_POST['collection'];
if (isset($_POST['parution'])) $parution=$_POST['parution'];
if (isset($_POST['acquisition'])) $acquisition=$_POST['acquisition'];
if (isset($_POST['observation']))$observation=$_POST['observation'];
if (isset($_POST['prix'])) $prix=$_POST['prix'];
if (isset($_POST['projet'])) $projet=$_POST['projet'];
if (isset($_POST['pertinence'])) $pertinence=$_POST['pertinence'];
if (isset($_POST['auteur'])) $pertinence=$_POST['auteur'];
if (isset($_POST['editeur'])) $editeur=$_POST['editeur'];
if (isset($_POST['issn'])) $issn=$_POST['issn'];
if (isset($_POST['mot'])) $mot=$_POST['mot'];
if (isset($_POST['localisation'])) $localisation=$_POST['localisation'];

//debut de la transaction
start transaction ;
insert into type (`id`, `nom`) values ('$id_type', '$type');
insert into source (`id`, `issn`,`nom`, `editeur`) values ('$id_source', '$issn','$source','$editeur');
insert into article_auteur (`id`, `article_id`,`auteur_id`) values ('$id_article_auteur', '$id_article','$id_auteur');
insert into auteur (`id`, `nom`) values ('$id_auteur', '$auteur');
insert into article_mot (`id`, `article_id`,`mot_id`) values ('$id_article_mot', '$id_article','$id_mot');
insert into mot (`id`, `cle`) values ('$id_mot', '$mot');
insert into article_rangement (`id`, `article_id`,`rangement_id`) values ('$id_article_rangement', '$id_article','$id_mot');
insert into rangement (`id`, `localisation`) values ('$id_rangement', '$localisation');
insert into article (`id`,`source_id`, `type_id`, `collation`,`parution`,`titre`, `acquisition`, `localisation`, `observation`, `prix`, `pertinence`, `projet`) values ('$id_article', '$id_source','$id_type', '$collection', '$parution','$titre', '$acquisition', '$localisation', '$observation','$prix', '$pertinence', '$projet' );

//fin de transaction
commit;
?>

</body>
</html>
0
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
déjà, y'aurait pas une erreur ici :

if (isset($_POST['type'])) $titre=$_POST['type'];

?? car deux lignes en dessous, tu as $titre=$_POST['titre'];

pour la suite, ca fonctionnerait pas mieux comme ca :

<html> 
<head> 
<title>nouveau article</title> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
</head> 
<body> 
<?php 
include('connect_db.php'); 
$id_article=mysql_insert_id(); 
$id_type=mysql_insert_id(); 
$id_source=mysql_insert_id(); 
$id_auteur=mysql_insert_id(); 
$id_mot=mysql_insert_id(); 
$id_rangement=mysql_insert_id(); 
$id_article_auteur=mysql_insert_id(); 
$id_article_mot=mysql_insert_id(); 
$id_article_rangement=mysql_insert_id(); 

if (isset($_POST['type'])) $type=$_POST['type']; 
if (isset($_POST['source'])) $pertinence=$_POST['source']; 
if (isset($_POST['titre'])) $titre=$_POST['titre']; 
if (isset($_POST['collection'])) $collection=$_POST['collection']; 
if (isset($_POST['parution'])) $parution=$_POST['parution']; 
if (isset($_POST['acquisition'])) $acquisition=$_POST['acquisition']; 
if (isset($_POST['observation']))$observation=$_POST['observation']; 
if (isset($_POST['prix'])) $prix=$_POST['prix']; 
if (isset($_POST['projet'])) $projet=$_POST['projet']; 
if (isset($_POST['pertinence'])) $pertinence=$_POST['pertinence']; 
if (isset($_POST['auteur'])) $pertinence=$_POST['auteur']; 
if (isset($_POST['editeur'])) $editeur=$_POST['editeur']; 
if (isset($_POST['issn'])) $issn=$_POST['issn']; 
if (isset($_POST['mot'])) $mot=$_POST['mot']; 
if (isset($_POST['localisation'])) $localisation=$_POST['localisation']; 

//debut de la transaction 
start transaction ; 
insert into type (id, nom) values ('$id_type', '$type'); 
insert into source (id, issn,nom, editeur) values ('$id_source', '$issn','$source','$editeur'); 
insert into article_auteur (id, article_id, auteur_id) values ('$id_article_auteur', '$id_article','$id_auteur'); 
insert into auteur (id, nom) values ('$id_auteur', '$auteur'); 
insert into article_mot (id, article_id, mot_id) values ('$id_article_mot', '$id_article','$id_mot'); 
insert into mot (id, cle) values ('$id_mot', '$mot'); 
insert into article_rangement (id, article_id,rangement_id) values ('$id_article_rangement', '$id_article','$id_mot'); 
insert into rangement (id, localisation) values ('$id_rangement', '$localisation'); 
insert into article (id, source_id, type_id, collation,parution,titre,acquisition, localisation, observation, prix, pertinence, projet) values ('$id_article', '$id_source','$id_type', '$collection', '$parution','$titre', '$acquisition', '$localisation', '$observation','$prix', '$pertinence', '$projet' ); 

//fin de transaction 
commit; 
?> 

</body> 
</html>
0
monaa Messages postés 104 Statut Membre 1
 
tjrs meme probleme ds la ligne début de transaction

Parse error: syntax error, unexpected T_STRING in C:\wamp\www\APPLI\insertion.php on line 36

J’ai regardé la doc sur les transactions

http://dev.mysql.com/doc/refman/5.0/fr/commit.html

ils disent qu’il ft mettre SET AUTOCOMMIT=0 pr les tables innodb -> type de mes tables

je ne sais pas si c ca le probleme!!!!

J’ai fait un test avec phpmyadmin en inserant 1 donné juste pr voir la syntaxe d’insertion ds mysql
insert into basenear.type (`id`, `nom`) values (''', 'toto'); marche dc j'ai modifié mais tjrs erreur Parse error: syntax error, unexpected T_STRING in C:\wamp\www\APPLI\insertion.php on line 36

<html>
<head>
<title>nouveau article</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
include('connect_db.php');
$id_article=mysql_insert_id();
$id_type=mysql_insert_id();
$id_source=mysql_insert_id();
$id_auteur=mysql_insert_id();
$id_mot=mysql_insert_id();
$id_rangement=mysql_insert_id();
$id_article_auteur=mysql_insert_id();
$id_article_mot=mysql_insert_id();
$id_article_rangement=mysql_insert_id();

if (isset($_POST['type'])) $type=$_POST['type'];
if (isset($_POST['source'])) $pertinence=$_POST['source'];
if (isset($_POST['titre'])) $titre=$_POST['titre'];
if (isset($_POST['collection'])) $collection=$_POST['collection'];
if (isset($_POST['parution'])) $parution=$_POST['parution'];
if (isset($_POST['acquisition'])) $acquisition=$_POST['acquisition'];
if (isset($_POST['observation']))$observation=$_POST['observation'];
if (isset($_POST['prix'])) $prix=$_POST['prix'];
if (isset($_POST['projet'])) $projet=$_POST['projet'];
if (isset($_POST['pertinence'])) $pertinence=$_POST['pertinence'];
if (isset($_POST['auteur'])) $pertinence=$_POST['auteur'];
if (isset($_POST['editeur'])) $editeur=$_POST['editeur'];
if (isset($_POST['issn'])) $issn=$_POST['issn'];
if (isset($_POST['mot'])) $mot=$_POST['mot'];
if (isset($_POST['localisation'])) $localisation=$_POST['localisation'];

//debut de la transaction
start transaction ;
insert into basenear.type (`id`, `nom`) values ('$id_type', '$type');
insert into basenear.source (`id`, `issn,nom`, `editeur`) values ('$id_source', '$issn','$source','$editeur');
insert into basenear.article_auteur (`id`, `article_id`,`auteur_id`) values ('$id_article_auteur', '$id_article','$id_auteur');
insert into basenear.auteur (`id`, `nom`) values ('$id_auteur', '$auteur');
insert into basenear.article_mot (`id`, `article_id`,`mot_id`) values ('$id_article_mot', '$id_article','$id_mot');
insert into basenear.mot (`id`, `cle`) values ('$id_mot', '$mot');
insert into basenear.article_rangement (`id`, `article_id`,`rangement_id`) values ('$id_article_rangement', '$id_article','$id_mot');
insert into basenear.rangement (id,localisation) values ('$id_rangement', '$localisation');
insert into basenear.article (`id`,`source_id`, `type_id`, `collation`,`parution`,`titre`, `acquisition`, `localisation`, `observation`, `prix`, `pertinence`, `projet`) values ('$id_article', '$id_source','$id_type', '$collection', '$parution','$titre', '$acquisition', '$localisation', '$observation','$prix', '$pertinence', '$projet' );

//fin de transaction
commit;
?>

</body>
</html>

voici mon fichier de connexion a la base
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>::connection::</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
// Déclaration des paramètres de connexion
$host = 'localhost';
$user = 'root';
$bdd ='basenear';
$passwd = '';

// Connexion au serveur
mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");
?>
</body>
</html>

merçi pr votre aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
et avec mysql_query("BEGIN"); au lieu de start transaction; ?
0
monaa Messages postés 104 Statut Membre 1
 
bsr a ts
j'ai essayé le mysql_query("BEGIN");
Parse error: syntax error, unexpected T_STRING in....
j'ai essayé ca aussi
mysql_query("SET AUTOCOMMIT=0");
mysql_query("BEGIN WORK");
d'aprés ce que j'ai vu sur 1 forum pareil erreur au premier insert

<html>
<head>
<title>nouveau article</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
include('connect_db.php');
$id_article=mysql_insert_id();
$id_type=mysql_insert_id();
$id_source=mysql_insert_id();
$id_auteur=mysql_insert_id();
$id_mot=mysql_insert_id();
$id_rangement=mysql_insert_id();
$id_article_auteur=mysql_insert_id();
$id_article_mot=mysql_insert_id();
$id_article_rangement=mysql_insert_id();

if (isset($_POST['type'])) $type=$_POST['type'];
if (isset($_POST['source'])) $pertinence=$_POST['source'];
if (isset($_POST['titre'])) $titre=$_POST['titre'];
if (isset($_POST['collection'])) $collection=$_POST['collection'];
if (isset($_POST['parution'])) $parution=$_POST['parution'];
if (isset($_POST['acquisition'])) $acquisition=$_POST['acquisition'];
if (isset($_POST['observation']))$observation=$_POST['observation'];
if (isset($_POST['prix'])) $prix=$_POST['prix'];
if (isset($_POST['projet'])) $projet=$_POST['projet'];
if (isset($_POST['pertinence'])) $pertinence=$_POST['pertinence'];
if (isset($_POST['auteur'])) $pertinence=$_POST['auteur'];
if (isset($_POST['editeur'])) $editeur=$_POST['editeur'];
if (isset($_POST['issn'])) $issn=$_POST['issn'];
if (isset($_POST['mot'])) $mot=$_POST['mot'];
if (isset($_POST['localisation'])) $localisation=$_POST['localisation'];

//debut de la transaction
//start transaction ;
//mysql_query("BEGIN");
mysql_query("SET AUTOCOMMIT=0");
mysql_query("BEGIN WORK");

insert into basenear.type (`id`, `nom`) values ('$id_type', '$type');
insert into basenear.source (`id`, `issn,nom`, `editeur`) values ('$id_source', '$issn','$source','$editeur');
insert into basenear.article_auteur (`id`, `article_id`,`auteur_id`) values ('$id_article_auteur', '$id_article','$id_auteur');
insert into basenear.auteur (`id`, `nom`) values ('$id_auteur', '$auteur');
insert into basenear.article_mot (`id`, `article_id`,`mot_id`) values ('$id_article_mot', '$id_article','$id_mot');
insert into basenear.mot (`id`, `cle`) values ('$id_mot', '$mot');
insert into basenear.article_rangement (`id`, `article_id`,`rangement_id`) values ('$id_article_rangement', '$id_article','$id_mot');
insert into basenear.rangement (id,localisation) values ('$id_rangement', '$localisation');
insert into basenear.article (`id`,`source_id`, `type_id`, `collation`,`parution`,`titre`, `acquisition`, `localisation`, `observation`, `prix`, `pertinence`, `projet`) values ('$id_article', '$id_source','$id_type', '$collection', '$parution','$titre', '$acquisition', '$localisation', '$observation','$prix', '$pertinence', '$projet' );

//fin de transaction
mysql_query("COMMIT");
?>

</body>
</html>

Parse error: syntax error, unexpected T_STRING in C:\wamp\www\APPLI\insertion.php on line 41 (1er insert)
merçi
0
monaa Messages postés 104 Statut Membre 1
 
help , je peux tjrs pas inserer mes données ds mes tables
récapitulatif :
je dispose de 9 tables suivantes sur mysql qui st de type innodb
Table article (id , source_id, type_id, collection, parution, titre, acquisition, lien, observation, prix, pertinence, projet)
Table type (id, nom)
Table source (id, nom)
Table auteur(id, nom)
Table mot (id, cle)
Table rangement (id, localisation)
Table article_auteur (id, auteur_ id, article_ id_)
Table article_mot (id, article_id_, mot _id_)
Table article_rangement (id, article_id, article_rangement)
je voudrais inserer des doonées ds ces tables a travers un formulaire
voici le script que j'utilise qui récupére mes variables et insére :

<?php
include('connect_db.php');
$id_article=mysql_insert_id();
$id_type=mysql_insert_id();
$id_source=mysql_insert_id();
$id_auteur=mysql_insert_id();
$id_mot=mysql_insert_id();
$id_rangement=mysql_insert_id();
$id_article_auteur=mysql_insert_id();
$id_article_mot=mysql_insert_id();
$id_article_rangement=mysql_insert_id();

if (isset($_POST['type'])) $type=$_POST['type'];
if (isset($_POST['source'])) $pertinence=$_POST['source'];
if (isset($_POST['titre'])) $titre=$_POST['titre'];
if (isset($_POST['collection'])) $collection=$_POST['collection'];
if (isset($_POST['parution'])) $parution=$_POST['parution'];
if (isset($_POST['acquisition'])) $acquisition=$_POST['acquisition'];
if (isset($_POST['observation']))$observation=$_POST['observation'];
if (isset($_POST['prix'])) $prix=$_POST['prix'];
if (isset($_POST['projet'])) $projet=$_POST['projet'];
if (isset($_POST['pertinence'])) $pertinence=$_POST['pertinence'];
if (isset($_POST['auteur'])) $pertinence=$_POST['auteur'];
if (isset($_POST['editeur'])) $editeur=$_POST['editeur'];
if (isset($_POST['issn'])) $issn=$_POST['issn'];
if (isset($_POST['mot'])) $mot=$_POST['mot'];
if (isset($_POST['localisation'])) $localisation=$_POST['localisation'];

mysql_query("SET AUTOCOMMIT=0"); // spécifier le début de la transaction
mysql_query("BEGIN WORK");

insert into basenear.type (`id`, `nom`) values ('$id_type', '$type');
insert into basenear.source (`id`, `issn,nom`, `editeur`) values ('$id_source', '$issn','$source','$editeur');
insert into basenear.article_auteur (`id`, `article_id`,`auteur_id`) values ('$id_article_auteur', '$id_article','$id_auteur');
insert into basenear.auteur (`id`, `nom`) values ('$id_auteur', '$auteur');
insert into basenear.article_mot (`id`, `article_id`,`mot_id`) values ('$id_article_mot', '$id_article','$id_mot');
insert into basenear.mot (`id`, `cle`) values ('$id_mot', '$mot');
insert into basenear.article_rangement (`id`, `article_id`,`rangement_id`) values ('$id_article_rangement', '$id_article','$id_mot');
insert into basenear.rangement (id,localisation) values ('$id_rangement', '$localisation');
insert into basenear.article (`id`,`source_id`, `type_id`, `collation`,`parution`,`titre`, `acquisition`, `localisation`, `observation`, `prix`, `pertinence`, `projet`) values ('$id_article', '$id_source','$id_type', '$collection', '$parution','$titre', '$acquisition', '$localisation', '$observation','$prix', '$pertinence', '$projet' );

//fin de transaction
mysql_query("COMMIT");
?>

</body>
</html>

Parse error: syntax error, unexpected T_STRING in C:\wamp\www\APPLI\insertion.php on line 41 (1er insert)
je n'arrive pas a voir pkoi j'ai cette erreur ds l'insert
merçi pr vos commentaires
cf précision (je suis encore débutante dc ne soyez pas trop méchant ds les commentaires si jamais ya kk choz ki vous chok)
bne jnée a ts
0
gryzzly Messages postés 5220 Date d'inscription   Statut Contributeur Dernière intervention   1 336
 
la même chose sans tes >> ` <<

insert into basenear.type (id, nom) values ('$id_type', '$type');

???

est ce que tu as essayé chaque requete insert séparément directement sous phpmyadmin pour vérifier qu'elles fonctionnent ?
0