Bonjour.

Je dois avoir un problème de syntaxe quelque part mais je n'arrive à trouver.
fichier fonctions.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
function enregistrer_action($id_etablist, $date_depot, $intitule, $mots_cles, $resume, $date_debut, $date_fin, $lieu, $action, $public, $nombre, $choix, $choix_personne, $choix_autre, $concertation, $concert_partenaires, $concert_forme, $evaluation, $eval_forme, $eval_precis, $detail_action)
{
	$id_etablist = mysql_real_escape_string($id_etablist);
	$date_depot = mysql_real_escape_string($date_depot);
	$intitule = mysql_real_escape_string($intitule);
	$mots_cles = mysql_real_escape_string($mots_cles);
	$resume = mysql_real_escape_string($resume);
	$date_debut = mysql_real_escape_string($date_debut);
	$date_fin = mysql_real_escape_string($date_fin);
	$lieu = mysql_real_escape_string($lieu);
	$action = mysql_real_escape_string($action);
	$public = mysql_real_escape_string($public);
	$nombre = mysql_real_escape_string($nombre);
	$choix = mysql_real_escape_string($choix);
	$choix_personne = mysql_real_escape_string($choix_personne);
	$choix_autre = mysql_real_escape_string($choix_autre);
	$concertation = mysql_real_escape_string($concertation);
	$concert_partenaires = mysql_real_escape_string($concert_partenaires);
	$concert_forme = mysql_real_escape_string($concert_forme);
	$evaluation = mysql_real_escape_string($evaluation);
	$eval_forme = mysql_real_escape_string($eval_forme);
	$eval_precis = mysql_real_escape_string($eval_precis);
	$detail_action = mysql_real_escape_string($detail_action);
 
    	$sql = "INSERT INTO actions(id_action, id_etablist, date_depot, intitule, mots_cles, resume, date_debut, date_fin, lieu, type_action, public, nombre, choix, choix_personne, choix_autre, concertation, concert_partenaires, concert_forme, evaluation, eval_forme, eval_precis, detail_action)
		       VALUES('', '$id_etablist', '$date_depot', '$intitule', '$mots_cles', '$resume', '$date_debut', '$date_fin', '$lieu', '$action', '$public', '$nombre', '$choix', '$choix_personne', '$choix_autre', '$concertation', '$concert_partenaires', '$concert_forme', '$evaluation', '$eval_forme', '$eval_precis', '$detail_action')";
	// insertion du formulaire dans la table 
    	mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
}
fichier dossier_candidature.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
$lieu = "";
if (isset($_POST['lieu']))			$lieu = $_POST['lieu'];
else $lieu = "";
if (empty($lieu))	$message30 = "Page 2, merci d'indiquer le lieu où c'est déroulée l'action."; 
//clic sur le bouton "valider le dossier"
if (isset($_POST['valider'])){
		enregistrer_action($id_etablist, $date_depot, $intitule, $mots_cles, $resume, $date_debut, $date_fin, $lieu, $action, $public, $nombre, $choix, $choix_personne, $choix_autre, $concertation, $concert_partenaires, $concert_forme, $evaluation, $eval_forme, $eval_precis, $detail_action);
		$id_action = mysql_insert_id();
		echo "Le dossier est enregistré";
		$fonction = "";		
}
//clic sur le bouton "valider les modifications"
if (isset($_POST['modifier'])){
    		$sql = "UPDATE actions SET id_etablist = '$id_etablissement', date_depot = '$date_depot' , intitule = '$intitule' , mots_cles = '$mots_cles' , resume = '$resume' , date_debut = '$date_debut' , date_fin = '$date_fin' , lieu = '$lieu' , type_action = '$action' , public = '$public' , nombre = '$nombre' , choix = '$choix' , choix_personne = '$choix_personne' , choix_autre = '$choix_autre' , concertation = '$concertation' , concert_partenaires = '$concert_partenaires' , concert_forme = '$concert_forme' , evaluation = '$evaluation' , eval_forme = '$eval_forme' , eval_precis = '$eval_precis' , detail_action = '$detail_action' WHERE id_etablist = $id_etablissement"; 
	    	mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
}
//récupération des données insérées
if (isset($id_etablist)){
		//récupération de l'action
		$sql = mysql_query("SELECT * FROM actions WHERE id_etablist = $id_etablist");
		if (mysql_num_rows($sql) > 0)
		{
			$res = mysql_fetch_array($sql);
			$id_action = $res['id_action'];
			$dateDebut = $res['date_debut'];
			$dateDebut = explode("-", $dateDebut);
			$ansd = $dateDebut[0];
			$moisd = $dateDebut[1];
			$dateFin = $res['date_fin'];
			$dateFin = explode("-", $dateFin);
			$ansf = $dateFin[0];
			$moisf = $dateFin[1];
			$lieu = $res['lieu'];		
			$action = $res['type_action'];
			$action = explode(",",$action);
			$public = $res['public'];
			$public = explode(",",$public);
			$nombre = $res['nombre'];
			$choix = $res['choix'];
			$choix_personne = $res['choix_personne'];
			$choix_personne = explode(",",$choix_personne);
			$choix_autre = $res['choix_autre'];
			$concertation = $res['concertation'];
			$concert_partenaires = stripslashes(nl2br(htmlentities(trim($res['concert_partenaires']))));
			$concert_partenaires = str_replace("<br />",'',$concert_partenaires);
			$concert_forme = stripslashes(nl2br(htmlentities(trim($res['concert_forme']))));
			$concert_forme = str_replace("<br />",'',$concert_forme);
			$evaluation = stripslashes(htmlentities(trim($res['evaluation'])));
			$evaluation = explode(",",$evaluation);
			$eval_forme = stripslashes(nl2br(htmlentities(trim($res['eval_forme']))));
			$eval_forme = str_replace("<br />",'',$eval_forme);
			$eval_precis = stripslashes(nl2br(htmlentities(trim($res['eval_precis']))));
			$eval_precis = str_replace("<br />",'',$eval_precis);
			$intitule = stripslashes(nl2br(htmlentities(trim($res['intitule']))));
			$intitule = str_replace("<br />",'',$intitule);
			$mots_cles = stripslashes(nl2br(htmlentities(trim($res['mots_cles']))));
			$mots_cles = str_replace("<br />",'',$mots_cles);
			$resume = stripslashes(nl2br(htmlentities(trim($res['resume']))));
			$resume = str_replace("<br />",'',$resume);
			$detailTab = stripslashes(nl2br(htmlentities(trim($res['detail_action']))));
			$detailTab = str_replace("<br />",'',$detailTab);
			$detailTab = explode("couper_ici ",$detailTab);
			$nb = count($detailTab);
			$detailTab = str_replace("couper_ici ",'',$detailTab);
			if ($nb==1){
				$detail1 = $detailTab[0];
			}
			else if ($nb == 2) {
				$detail1 = $detailTab[0];
				$detail2 = $detailTab[1];
			}
			else if ($nb == 3) {
				$detail1 = $detailTab[0];
				$detail2 = $detailTab[1];
				$detail3 = $detailTab[2];
			}	
		}
}
include 'formulaire_candidature.php';
fichier formulaire_candidature.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<div id="div1" class="visible">
<form name="dossier" method="POST" action="index.php?page=dossier">
<table>
   ...
 
			<br />
			<span style="margin-left:20px">- Lieu du déroulement de l'action * : &nbsp;&nbsp;<input type="text" name="lieu" value="<?php echo stripslashes(htmlentities(trim($lieu))); ?>" style="width:410px; font-size:13px" /></span>
			<br /><br />
</table>
<?php
if (!empty($id_etablissement)){
	echo '<p align="center"><input type="submit" name="modifier" value="Valider les modifications"></p>';
}
else {
	echo '<p align="center"><input type="submit" name="valider" value="Valider le dossier"></p>';
}
?>
</form>
</div>
Si <input type="text" name="lieu" ....> je saisi "dans entreprise", l'insertion et la modification se font sans problème.
Par contre si je saisi "dans l'entreprise", j'ai un message d'erreur de syntaxe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Erreur SQL !UPDATE actions SET id_etablist = '1', date_depot = '2008-07-09' , intitule = '' , mots_cles = '' , resume = '' , date_debut = '2005-02-01' , date_fin = '2006-10-01' , lieu = 'dans l'entreprise' , type_action = '' , public = '' , nombre = '' , choix = '' , choix_personne = '' , choix_autre = '' , concertation = '' , concert_partenaires = '' , concert_forme = '' , evaluation = '' , eval_forme = '' , eval_precis = '' , detail_action = '' WHERE id_etablist = 1
Erreur de syntaxe près de 'entreprise' , type_action = '' , public = '' , nombre = '' , cho' à la ligne 1
j'ai beau regarder je ne vois pas où est l'erreur.

Un oeil neuf verra certainement le problème.
Merci d'avance