Bonjour,
je souhaite insérer des évènements dans ma base SQL mais sur plusieurs jours...
Comment faire une boucle entre la date_départ récupérée et la date_fin ?
Merci.

mon formulaire d'insertion :
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
<form method="post" action="insertion3.php">
<p />
<br />
<fieldset>
<legend> &nbsp; Annoncer un &eacute;v&egrave;nement sur plusieurs journ&eacute;es &nbsp; </legend>
 
<?php
// début de la première requête sur le type d'évènement
echo '<label>'.'Type d&rsquo; &eacute;v&egrave;nement &nbsp; : &nbsp;'.'</label>';
echo '<select name="evenement2" class="ev" tabindex="1" onfocus="this.className=\'ev_focus\';" onblur="this.className=\'ev\';">';
 
// connexion à la base
$affich_form = "SELECT * FROM type_ev" ;
$resultat = mysql_query($affich_form) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($resultat);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste de type d'évènement
else
{
while ( $list = mysql_fetch_array( $resultat ) )
{
echo '<option value="'.$list['Type_evenement'].'">'.$list['Type_evenement'].'</option>';
} // fin du while
} // fin du else
echo'</select>';
 
// fin de la première requête sur le type d'évènement
 
echo '<br />';
 
// début de la deuxième requête sur le type d'établissement
echo '<label>'.'Type d&rsquo; &eacute;tablissement &nbsp; : &nbsp;'.'</label>';
echo '<select name="lieu2" class="ev" tabindex="2" onfocus="this.className=\'ev_focus\';" onblur="this.className=\'ev\';">';
 
$affich_form2 = "SELECT * FROM type_etab" ;
$resultat2 = mysql_query($affich_form2) or die ('Erreur : '.mysql_error() );
$total2 = mysql_num_rows($resultat2);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat2) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste de type d'évènement
else
{
while ( $list2 = mysql_fetch_array( $resultat2 ) )
{
echo '<option value="'.$list2['type_etablissement'].'">'.$list2['type_etablissement'].'</option>';
} // fin du while
} // fin du else
echo'</select>';
 
// fin de la première deuxième requête sur le type d'établissement
 
echo '<br />';
 
// début de la troisième requête sur le secteur
echo '<label>'.'Secteur'.'&nbsp; : &nbsp; '.'</label>';
echo '<select name="secteur" class="ev" tabindex="3" onfocus="this.className=\'ev_focus\';" onblur="this.className=\'ev\';">';
$affich_form3 = "SELECT * FROM secteur" ;
$resultat3 = mysql_query($affich_form3) or die ('Erreur : '.mysql_error() );
$total3 = mysql_num_rows($resultat3);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat3) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list3 = mysql_fetch_array( $resultat3 ) )
{
echo '<option value="'.$list3['secteur_geographique'].'">'.$list3['secteur_geographique'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la troisième  requête sur le secteur
 
echo '<br />';
 
// début de la quatrième requête sur les jours
echo '<label>'.'Du &nbsp; : &nbsp; '.'</label>';
echo '<select name="jour" class="jj" tabindex="4" onfocus="this.className=\'jj_focus\';" onblur="this.className=\'jj\';">';
$affich_form4 = "SELECT * FROM jours" ;
$resultat4 = mysql_query($affich_form4) or die ('Erreur : '.mysql_error() );
$total4 = mysql_num_rows($resultat4);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat4) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list4 = mysql_fetch_array( $resultat4 ) )
{
echo '<option value="'.$list4['jour'].'">'.$list4['jour'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la quatrième requête sur les jours
 
// début de la cinquième requête sur les mois
echo '<label>'.'</label>';
echo '<select name="mois" class="mm" tabindex="5" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form5 = "SELECT * FROM mois" ;
$resultat5 = mysql_query($affich_form5) or die ('Erreur : '.mysql_error() );
$total5 = mysql_num_rows($resultat5);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat5) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list5 = mysql_fetch_array( $resultat5 ) )
{
echo '<option value="'.$list5['Nb'].'">'.$list5['mois'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la cinquième requête sur les mois
echo '<br />';
echo '<br />';
 
// début de la sixième requête sur les jours
echo '<label>'.'Au &nbsp; : &nbsp; '.'</label>';
echo '<select name="jour2" class="jj" tabindex="6" onfocus="this.className=\'jj_focus\';" onblur="this.className=\'jj\';">';
$affich_form6 = "SELECT * FROM jours" ;
$resultat6 = mysql_query($affich_form6) or die ('Erreur : '.mysql_error() );
$total6 = mysql_num_rows($resultat6);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat6) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list6 = mysql_fetch_array( $resultat6 ) )
{
echo '<option value="'.$list6['jour'].'">'.$list6['jour'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la sixième requête sur les jours
 
// début de la septième requête sur les mois
echo '<label>'.'</label>';
echo '<select name="mois2" class="mm" tabindex="7" onfocus="this.className=\'mm_focus\';" onblur="this.className=\'mm\';">';
$affich_form7 = "SELECT * FROM mois" ;
$resultat7 = mysql_query($affich_form7) or die ('Erreur : '.mysql_error() );
$total7 = mysql_num_rows($resultat7);
//On vérifie que la table contient quelque chose
if
(mysql_num_rows($resultat7) == 0)
{
echo '<option>Aucun</option>';
} // fin si rien dans la liste
else
{
while ( $list7 = mysql_fetch_array( $resultat7 ) )
{
echo '<option value="'.$list7['Nb'].'">'.$list7['mois'].'</option>';
} // fin du while
} // fin du else
echo '</select>';
// fin de la septième requête sur les mois
echo '<br />';
echo '<br />';
 
?>
 
<label for="ev6">Tarif &nbsp; : &nbsp; </label>
<select id="idSelect" name="tarif" tabindex="7" 
onfocus="this.className='ev_focus';" onchange="showT();" onblur="this.className='ev';valide(this, 'err_id');" class="ev">
<option value="Gratuit"> Gratuit </option>
<option value="Payant"> Payant </option>
</select>
<input type="text" id="idInput" tabindex="8" name="montant" style="display:none;"  onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /> <span id="err_id" style="color:red"></span>
<span id="err_id" style="color:red"></span>
<br />
<br />
<label for="ev7">Nom du lieu &nbsp; : &nbsp; </label>
<input type="text" tabindex="9" name="lieu3" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<br />
<label for="ev8">Heure de d&eacute;but &nbsp; : &nbsp; </label>
<input type="text" tabindex="10" name="debut" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');" class="ev" /><span id="err_id" style="color:red"></span>
<br />
<br />
<label for="ev9">Nom de l'artiste...&nbsp; : &nbsp; </label>
<input type="text" name="nom4" tabindex="11" onfocus="this.className='ev_focus';" onblur="this.className='ev';valide(this, 'err_id');"
 class="ev" /><span id="err_id" style="color:red"></span>
<br />
<br />
<label for="coment">Description &nbsp; : &nbsp; </label>
<textarea name="comments" tabindex="12" onfocus="this.className='textarea_focus';" onblur="this.className='textarea';valide(this, 'err_id');">
</textarea>
</fieldset>
<p>
<input type="submit" tabindex="13" value="Envoyer" />
<input type="reset" tabindex="14" value="Tout effacer" />
</p>
</form>
et le "submit" insertion3.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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
<?php session_start();
require ('./_protection_page.php'); 
require ("configuration.php"); //accès à la base de données
$sql = connect_sql();
$pseudo_membre2 = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre2'"); 
$result = mysql_fetch_array ($requete);
$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />	
<title>MON SITE</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
 
<body>
<?php include('bandeau.php'); ?> <!-- insère le bandeau principal en haut -->
<div id="mainContent">
 
<table>
 
<?php
// On commence par récupérer les champs
if(isset($_POST['evenement2'])) $evenement2=$_POST['evenement2'];
else $evenement2="";
if(isset($_POST['lieu2'])) $lieu2=$_POST['lieu2'];
else $lieu2="";
if(isset($_POST['secteur'])) $secteur=$_POST['secteur'];
else $secteur="";
if(isset($_POST['tarif'])) $tarif=$_POST['tarif'];
else $tarif="";
if(isset($_POST['montant'])) $montant=$_POST['montant'];
else $montant="";
if(isset($_POST['lieu3'])) $lieu3=$_POST['lieu3'];
else $lieu3="";
if(isset($_POST['debut'])) $debut=$_POST['debut'];
else $debut="";
if(isset($_POST['nom4'])) $nom4=$_POST['nom4'];
else $nom4="";
if(isset($_POST['jour'])) $jour=$_POST['jour'];
else $jour="";
if(isset($_POST['mois'])) $mois=$_POST['mois'];
else $mois="";
if(isset($_POST['jour2'])) $jour=$_POST['jour2'];
else $jour="";
if(isset($_POST['mois2'])) $mois=$_POST['mois2'];
else $mois="";
if(isset($_POST['comments'])) $comments=$_POST['comments'];
else $comments="";
 
// On ne vérifie pas l'année !
if(isset($_POST['annee'])) $annee=$_POST['annee'];
else $annee="2011";
 
// On vérifie si les champs sont vides
if(empty($evenement2) OR empty($lieu2) OR empty($secteur) OR empty($tarif) OR empty($lieu3) 
OR empty($debut) OR empty($nom4) OR empty($comments) OR empty($jour) OR empty($mois) OR empty($jour2) OR empty($mois2) OR empty($pseudo_membre2))
{
// on remet en français et pas en UTF8...
$comments2 = stripslashes($comments);
$lieu_nom = stripslashes($lieu3);
$nom_affiche = stripslashes($nom4);
    echo '<b>'.'attention &nbsp;'.'<strong>'.$pseudo_membre2.'</strong>'.' &nbsp; les champs ne sont pas bien remplis ! vérifier les données ci-dessous : '.'</b>';
    echo '<br />';
    echo '<br />';
    echo 'Type d&rsquo; &eacute;v&egrave;nement : '.'<b>'.$evenement2.'</b>';
	echo '<br />';
    echo 'Type de lieu : '.'<b>'.$lieu2.'</b>';
	echo '<br />';
    echo 'Secteur : '.'<b>'.$secteur.'</b>';
	echo '<br />';
    echo 'Tarif : '.'<b>'.$tarif.'</b>';
	echo '<br />';
    echo 'Nom du lieu : '.'<b>'.$lieu_nom.'</b>';
	echo '<br />';
    echo 'Début : '.'<b>'.$debut.'</b>';
	echo '<br />';
    echo 'Description : '.'<b>'.$comments2.'</b>';
	echo '<br />';
    echo 'Nom : '.'<b>'.$nom_affiche.'</b>';
	echo '<br />';
    echo 'Du : '.'<b>'.$jour.'</b>';
	echo ' &nbsp; '.'<b>'.$mois.'</b>';
	echo '<br />';
	echo 'Au : '.'<b>'.$jour2.'</b>';
	echo ' &nbsp; '.'<b>'.$mois2.'</b>';
	echo '<br />';
	echo 'Pseudo : '.'<b>'.$pseudo_membre2.'</b>';
	echo '<br />';
	echo '<a href="javascript:window.history.go(-1)">'.'Retour &agrave; l\'insertion d\'agenda'.'</a>'; // retour en page précédente
	echo '<br />';
	echo '<br />';
}
// Aucun champ n'est vide, on peut continuer
else
{
// vérification du commentaire
$comment_verif=$_POST['comments'];
// liste des mots a bannir dans un tableau
$tb = array("enfoiré","idiot","naze");
// initialise le compteur
$j=0;
// boucle sur la quantité des valeur du tableau $tb
while ($j<sizeof($tb))
{
// le masque avec les délimitateurs
$masque = '~\b'.$tb[$j].'\b~';
// la condition avec le test sur les mots du texte
if( preg_match_all($masque, $comment_verif, $matches))
 {	// le message d'erreur
 echo '<br />Mots non autorisés dans le commentaire : <strong>'.$matches[0][0].'</strong>';
 }
// + 1 dans le compteur, on continue de boucler sur tous les mots bannis
 $j++;
} // fin du while sur les mots
 
// création de la date de départ au format date MySQL
$date_depart=$annee.'-'.$_POST['mois'].'-'.$_POST['jour'];
// création de la date de fin au format date MySQL
$date_fin=$annee.'-'.$_POST['mois2'].'-'.$_POST['jour2'];
 
// création de la date au format date MySQL
$date_ev=$annee.'-'.$_POST['mois'].'-'.$_POST['jour'];
 
// connexion à la base
// require("configuration.php");
// $sql = connect_sql();
 
// on écrit la requête sql
mysql_query("SET NAMES utf8");
$query = "SELECT * FROM evenement WHERE nom='$nom4' and lieu='$lieu3' and date_ev='$date_ev'";
$result = mysql_query($query);
$res = mysql_num_rows($result);
// Récuperation des resultats
if ($res==0)
{
// insertion dans la base si pas d'évènement identique
$sql2 = "INSERT INTO evenement(type_evenement, type_etab, secteur, heure, tarif, montant, lieu, nom, description, date_ev, pseudo_ev) 
VALUES('$evenement2','$lieu2','$secteur','$debut','$tarif','$montant','$lieu3','$nom4','$comments','$date_ev','$pseudo_membre2')";
// on insère les informations du formulaire dans la table
mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
//On remet la date au format français
setlocale (LC_TIME, 'fr_FR.UTF8');
$date_vue = strftime("%A %d %B",strtotime("$date_ev"));
// on affiche le résultat pour le visiteur
setlocale (LC_TIME, 'fr_FR.UTF8');
echo '<p>'.'</p>'."\n";
// on remet en français et pas en UTF8...
$comments2 = stripslashes($comments);
$lieu_nom = stripslashes($lieu3);
$nom_affiche = stripslashes($nom4);
 
echo 'Merci &nbsp;'.'<b>'.'<strong>'.$pseudo_membre2.'</strong>'.' &nbsp; les informations suivantes ont été ajoutées dans notre agenda'.'</b>';
    echo '<br />';
    echo 'Type d&rsquo; &eacute;v&egrave;nement : '.'<b>'.$evenement2.'</b>';
	echo '<br />';
    echo 'Type de lieu : '.'<b>'.$lieu2.'</b>';
	echo '<br />';
    echo 'Secteur : '.'<b>'.$secteur.'</b>';
	echo '<br />';
    echo 'Tarif : '.'<b>'.$tarif.'</b>';
	echo '<br />';
	echo 'Montant : '.'<b>'.$montant.'</b>';
	echo '<br />';
    echo 'Nom du lieu : '.'<b>'.$lieu_nom.'</b>';
	echo '<br />';
    echo 'Début : '.'<b>'.$debut.'</b>';
	echo '<br />';
    echo 'Nom : '.'<b>'.$nom_affiche.'</b>';
	echo '<br />';
    echo 'Date : '.'<b>'.$date_vue.'</b>';
	echo '<br />';
	echo 'Description : '.'<b>'.$comments2.'</b>';
	echo '<br />';
    echo '<br />';
	echo '<a href="javascript:window.history.go(-1)">'.'Retour &agrave; l\'insertion d\'agenda'.'</a>'; // retour en page précédente
 
}
 
// si entrée déjà effectuée
else
{
echo '<br />';
echo '<b>'.'Attention &nbsp;'.$pseudo_membre2.'</strong>'.' &nbsp; : &eacute;v&egrave;nement déjà saisi dans l\'agenda !'.'</b>';
echo '<br />';
echo '<a href="javascript:window.history.go(-1)">'.'Retour &agrave; l\'insertion d\'agenda'.'</a>'; // retour en page précédente
 
//On fait une boucle pour sortir toutes les entrées lieu / nom / date déjà saisies à cette date
while($affiche = mysql_fetch_array($result))
 {
//On remet la date au format français
setlocale (LC_TIME, 'fr_FR.UTF8');
$date_affiche = $affiche["date_ev"];
$date_vue = strftime("%A %d %B",strtotime("$date_affiche"));
 //On affiche les entrées
 setlocale (LC_TIME, 'fr_FR.UTF8');
echo '<p>'.'</p>';
echo '<b>'."<div class='recherche'>".$affiche["type_evenement"]."   ".'</b>'."</div>";
echo '<p>'.'</p>';
echo "<div class='recherche'>"."    > ".$affiche["type_etab"]."   "."</div>";
echo '<b>'."<div class='recherche'>"."    > ".$date_vue."   ".'</b>'."</div>";
echo "<div class='recherche'>"."    > ".$affiche["secteur"]."   "."</div>";
echo "<div class='recherche'>"."Début à : ".$affiche["heure"]."   "."</div>";
echo "<div class='recherche'>"."  Tarif : ".$affiche["tarif"]."   "."</div>";
echo "<div class='recherche'>"."  Montant : ".$affiche["montant"]."   "."</div>";
echo "<div class='recherche'>"." où ? ".$affiche["lieu"]."   "."</div>";
echo '<b>'."<div class='recherche'>"." qui ? ".$affiche["nom"]."   ".'</b>'."</div>";
echo '<p>'.'</p>';
echo "<div class='recherche'>"."      < ".$affiche["description"]."   "."</div>";
echo '<br>'.'</br>';
//On ferme la boucle while
}
// fin de la deuxième boucle else
}
 
// fin de la première boucle else
}
 
mysql_close($sql);  // on ferme la connexion
 
 
?>
 
</table>
 
<br />
<a href="pdf_deconnexion.php">D&eacute;connexion</a>
<p />
<p />
 
</div>
 
<?php include('bas_de_page.php'); ?> <!-- insère le bas de page  -->