begin process at 2012 05 31 20:16:29
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Table temporaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Table temporaire

jeudi 28 août 2008 à 16:07:36 | Table temporaire

nono52

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
lundi 1 septembre 2008 à 19:46:05 | Re : Table temporaire

nono52

Personne n'a une idée de solution ?

Mon soucis dans le code se trouve là:

$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']."");

Quel serait le moyen d'éviter que tous les modules recoivent la date du jour et non ceux que j'ai sélectionné dans mon formulaire.
Est ce que je dois rajouter une requète mais dans ce cas laquelle ?
mercredi 3 septembre 2008 à 10:18:06 | Re : Table temporaire

Dj Nam

Bojour,
lorsque je veux insérer une date dans une requête SQL je la stoque dans une variable avant car j'ai toujours eu le même problème, alors voici une solution :
$jour = date('Y-m-d',time());
$db1->q("UPDATE participe SET niveau=".$_POST[$var['id']].", date_part='".$jour."' WHERE cursus_id=".$var['id']." AND membre_id=".$_POST['eleve']."");

Maxime


Cette discussion est classée dans : mysql, id, echo, niveau, cursus


Répondre à ce message

Sujets en rapport avec ce message

Souci dans mon tableau [ par slhuilli ] Bonjour,je cherche la faille dans ce bout de code depuis p$ls jours sans trouver. Qu'elqu'un pourra peut être maider et m'expliquer . En fait, je n MySQL id? [ par Linuss ] Bonjour à tous, Voilà, lorsque j'essaie de faire un lien qui contient l'id (qui existe au ca sou quelqu'un poserait la question :) d'un tuto, je n'y a Besoin Aide Formulaire [ par Dexterage ] bonjour a tous :)voila jai un tit soucis avec ma page! Le but de la page étant de faire une lister d'évènement, en fonction des lieux. Il y a une tabl Mysql erreur, mais où ? [ par Tilix ] Bonjour,Je voudrais savoir où est l'erreur dans ceci :while($data = mysql_fetch_assoc($req))     {   if ('!'.$data['id'].'') { echo '(0)'; }    else { Pagination en php URGENT [ par hoodlum ] Tout d'abord je suis debutant en php et J'ai un petit pb,jarrive pas a trouver l'erreur dans mon script de pagination pour une requete SQL qui retourn AU SECOUR [ par hoodlum ] voici mon script:   include("heads.inc.php");      $req=$_SERVER['REQUEST_METHOD'];     if($req=="POST")       $cho etre perdu [ par hoodlum ] contrairement a tous les message ke g pu laissé sur le forum ;G trouvé le probleme .mais je c pa pkoi.voici mon :   include("heads.inc.php");      $re UNE BOUCLE infernal HELP ME!!! [ par hoodlum ] Le problemes c ke o 2eme passage par pasage a l'url le script arrete d'etre executé a partir de la ou g mis le pointillé car le while n'est pas execut Authentification [ par Alricaus ] Bonjour à tous. J'aimerai réaliser un code en php, utilisant la base de donnée mysql, pour faire que lorsqu'une personne s'identifie sur l'index en ht mysql [ par jnbrunet ] Salut, Je suis en train de programmé une partie admin pour un forum. Je permets au admin de blocker une discution en entrant le # de la discution dans


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,998 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales