Bonjour,
Je me permet de vous solliciter car j'ai un PB d'insertion de date dans une table Mysql.
J'ai un formulaire qui me permet de valider des modules par niveaux, ces niveaux sont choisis via la sélection d'une couleur, cette couleur détermine le niveau.
Pour la validation j'appelle un fichier php contenant la requète pour l'inscription dans la table.
Mon PB vient du fait que la date du jour est insérée lors de la validation pour chaque module et non comme je le voudrai c'est à dire:
je sélectionne le module, je lui affiche une couleur prédéfinie(niveau) dans un select et en validant mon formulaire j'insère la date du jour et le niveau qui correspond.
En réalité tous les modules recoivent la date du jour et non ceux que j'ai sélectionné dans mon formulaire.
On m'a conseillé d'utiliser une table temporaire pour faire une comparaison entre ma table d'origine et les modifs du formulaire pour pouvoir inscrire dans la table d'origine uniquement les modifications que j'ai apporté. Malheureusement j'ai des lacunes dans ce domaine et j'airai besoin de votre aide.
Mon formulaire:
<?php
session_start();
require_once './../include/mysql.inc.php';
require_once './../include/dbdata.inc.php';
$db1 = new Mysql($dbdata['host'],$dbdata['db'],$dbdata['user'],$dbdata['pass']);
require_once './../include/fonctions.inc.php';
?>
<script language="JavaScript">
function fermer() {
opener=self;
self.close();
}
</script>
<form action="../index.php?page=validation_vol" onsubmit="fermer()" method="post" enctype='multipart/form-data'>
<input type="hidden" name="vol" value="<?php echo $_GET['vol']; ?>" />
<input type="hidden" name="eleve" value="<?php echo $_GET['eleve']; ?>" />
Heure de vol : <select name="heure_heure"><option value="00">Heure</option>
<?php
for ($i=0;$i<=24;$i++) {
if (strlen($i) == 1) { $i='0'.$i; }
echo '<option value="'.$i.'">'.$i.'</option>';
}
?></select> <select name="heure_min">
<option value="00">Min</option>
<?php
for ($i=0;$i<=60;$i++) {
if (strlen($i) == 1) { $i='0'.$i; }
echo '<option value="'.$i.'">'.$i.'</option>';
}
?>
</select>
<br />
<br />
<?php
$db1->q("SELECT membre_avion FROM membre WHERE membre_id='".$_GET['eleve']."'");
$donnees = $db1->f();
$result = mysql_query('SELECT id, type, module, intitule FROM cursus WHERE type_avion = "'.$donnees['membre_avion'].'"') or die(__LINE__.mysql_error().$sql);
?>
<input type="hidden" name="avion" value="<?php echo $donnees['membre_avion']; ?>" />
<h2>Cursus : <?php echo $donnees['membre_avion']; ?></h2>
<br/>
<table>
<tr>
<th>type</th>
<th>module</th>
<th>intitule</th>
<th>etat</th>
</tr>
<?php
while ($var = mysql_fetch_assoc($result)) {
?>
<tr>
<td><?php echo $var['type']; ?></td>
<td><?php echo $var['module']; ?></td>
<td><?php echo $var['intitule']; ?></td>
<td>
<?php
$a = mysql_query('SELECT niveau FROM participe WHERE membre_id='.$_GET['eleve'].' AND cursus_id='.$var['id'].' ');
$b = mysql_fetch_assoc($a);
if ($b['niveau'] == 1) {
echo '<img src="./../images/orange.gif" />';
} elseif ($b['niveau'] == 2) {
echo '<img src="./../images/vert.gif" />';
} elseif ($b['niveau'] == 3) {
echo '<img src="./../images/bleu.gif" />';
} else {
echo '<img src="./../images/redv.gif" />';
}
?>
<select name="<?php echo $var['id'] ?>">
<?php
$db1->q('SELECT niveau FROM participe,cursus WHERE membre_id='.$_GET['eleve'].' AND cursus_id='.$var['id'].' AND cursus_id=cursus.id');
if ($b['niveau'] == 1) {
echo '<option value="1" selected="selected">Orange</option>';
} elseif ($b['niveau'] == 2) {
echo '<option value="2" selected="selected">Vert</option>';
} elseif ($b['niveau'] == 3) {
echo '<option value="3" selected="selected">Bleu</option>';
} else {
echo '<option value="0" selected="selected">Rouge</option>';
}
echo '<option value="0">Rouge</option>
<option value="1">Orange</option>
<option value="2">Vert</option>
<option value="3">Bleu</option>
';
?>
</select>
</td>
</tr>
<?php
}
?>
</table>
<br />
<br />
<input type="submit" name="ajouter" value="Ajouter">
</form>
Ma réquète pour mise à jour de la table:
<?php
if (isset($_POST['ajouter']) && $_POST['ajouter'] == 'Ajouter') {
$result = mysql_query('SELECT id FROM cursus WHERE type_avion = "'.$_POST['avion'].'"');
while ($var = mysql_fetch_assoc($result)) {
if (isset($_POST[$var['id']])) {
$db1->q("UPDATE participe SET niveau=".$_POST[$var['id']].", date_part='".date('Y-m-d',time())."' WHERE cursus_id=".$var['id']." AND membre_id=".$_POST['eleve']."");
}
}@mysql_free_result($result);
$db1->q("UPDATE vol SET Hvol='".$_POST["heure_heure"].":".$_POST["heure_min"].":00' WHERE vol_code=".$_POST["vol"]." ");
}
?>
Merci pour votre aide
