par
cypat2 » 17 avr. 2013, 13:51
Bonjour,
j'essaye de développer un système de pointage mais je rencontre certain soucis.
Le principe de ce système est simple: j'arrive sur une page je pointe en fonction de la présence ou non a une réunion de certaine personne. Et je peu si je le souhaite ajouté un commentaire à côté.
Ce que j'ai déjà fait:
J'arrive à avoir ma mise à jour de ma table concernant les présences ou non au training.
Ma base est construite de cette manière:
TABLE membres
- ID
- Nom
TABLE pointeuse
- ID
- Date
- titre
TABLE présence
- ID_reunion
- ID_membres
- presence (0/1/2)
- Commentaire (Text)
Ce que je n'arrive pas à faire:
Je n'arrive pas a mettre à jour via le UPDATE le commentaire.
Mon code:
// CONNEXION BDD
//Traitement date
$raction = isset($_GET['rid']);
$maction = isset($_GET['mid']);
//Changement statut (MARCHE BIEN)
if ($maction <> ""){
$mid = $_GET['mid'] ;
$id = $_GET['id'] ;
$status = $_POST['statut'];
$reponse_U = mysql_query ("UPDATE presence SET presence =".$status." WHERE id_reunion=".$id." AND id_membre=".$mid."");
}
//Commentaire (si &rid) (MARCHE PAS)
if ($raction <> ""){
$id = $_GET['id'] ;
$rid = $_GET['rid'] ;
$commentaire = $_POST['comm'];
$reponse_X = mysql_query ("UPDATE presence SET commentaire =".$commentaire." WHERE id_reunion=".$id." AND id_membre=".$rid."");
}
// ...autre code
<?php
$reponse = mysql_query ('SELECT * from presence INNER JOIN membres ON presence.id_membre=membres.id INNER JOIN pointeuse ON pointeuse.id= presence.id_reunion WHERE id_reunion='.$_GET['id'].' ORDER BY membres.pseudo')
or die("Impossible d'executer la requête :".$reponse."<br>Erreur:".mysql_error());
while ($donnees = mysql_fetch_array($reponse))
{
?>
<td align="center" valign="center"><?php if($donnees['presence']== "-1"){ echo'<font color="#CC6600">'.$donnees['pseudo'].'</font>'; } if($donnees['presence']== "1"){ echo'<font color="#00FF00">'.$donnees['pseudo'].'</font>'; } if($donnees['presence']== "2"){ echo'<font color="#FFFFFF">'.$donnees['pseudo'].'</font>'; } if($donnees['presence']== "0"){ echo'<font color="#FF0000">'.$donnees['pseudo'].'</font>'; } ?></td><td><form method="post" action="index.php?page=pointage&id=<?php echo ''.$_GET['id'].'&mid='.$donnees['id_membre'].'' ?>"></p>
<select name="statut" size="1" id="statut" onChange="submit()">
<option value="-1" <?php if($donnees['presence'] == "-1"){echo 'selected="selected"'; }?>>Incertain</option>
<option value="1" <?php if($donnees['presence'] == 1){echo 'selected="selected"'; }?>>Présent</option>
<option value="0" <?php if($donnees['presence'] == 0){echo 'selected="selected"'; }?>>Absent</option>
<option value="2" <?php if($donnees['presence'] == 2){echo 'selected="selected"'; }?>>n'a pas pointé</option>
</select>
</form> </td>
<td><?php if($donnees['commentaire'] != "")
{
echo ''.$donnees['commentaire'].'' ;
}
else
{ ?>
<form method="post" action="index.php?page=pointage&id=<?php echo ''.$_GET['id'].'&rid='.$donnees['id_membre'].'' ; ?>"><input type="text" name="comm"><?php echo ''.$commentaire.'&id='.$id.'&rid='.$rid.'' ; ?><INPUT type="submit" value="Ok"> </form>
<?php
} ?></td></tr>
<?php
}} ?>
<?php } ...
Le résulat est:
Gerard (en vert, orange ou rouge) + Formulaire de pointage + Case commentaire a remplir + bouton ok (submit)
En entrant manuellement une entré dans la BDD, le code fonctionne.
J'ai ajouté cette ligne ci: <?php echo ''.$commentaire.'&id='.$id.'&rid='.$rid.'' ; ?> afin de vérifié si mes variables renvoyer la bonne information, et si j'arrivé à la récupérer. Cela fonctionne correctement et m'affiche ce que j'ai taper correctement.
Je n'arrive pas à voir mon erreur, si une âme charitable peut se pencher sur mon problème, je lui en serait reconnaissant.
Cordialement,
Cypat2