Comment lier une tâche à plusieurs utilisateurs en php

Fermé
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013 - 25 mai 2013 à 15:56
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 - 25 mai 2013 à 23:41
Bonjour,
Gestion des tâches multi-utilisateurs : lors de la création d'une tâche, vous pouvez donnez les mails des personnes qui sont aussi concernées par le todo (tâche). Ils pourront alors le voir comme si c'était le leur, mais ne pourront pas le modifier/supprimer.
Je n'ai aucune idée de comment faire.Merci d'avance pour vos réponses.
Cordialement.
A voir également:

23 réponses

loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
25 mai 2013 à 19:33
Heuu, en gros tu veut donner des mails ; à ceux qui sont dans un groupe ?
Si c'est le cas .. ben fait une jointure SQL ..
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 19:37
En fait quand on crée une tâche on indique les mails des personnes concernées par la tâche comme ça ils pourront voir la tâche dans leur liste des tâches.
J'ai une table login avec id,login,mdp,mail,date,heure puis une table tache avec id,titre,resume,priorite et une table concerne avec idlogin et idtache mais je fais quelles jointures?
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 20:28
Ok, trois table, dont une qui vas servir de liaison .. Normal !

Donc pour récupérer les mails, j'aurais tendance à faire :

SELECT mail
FROM login
RIGHT JOIN concerne ON login.id=concerne.idLogin
LEFT JOIN tache ON concerne.idTache=tache.id
WHERE login.id='$my_id'


heu non, attend, c'est presque ça ...
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 20:33
Oui mais comment on sélectionne les personnes concernées par une même tâche et pour l'afficher dans chaque compte
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 20:41
Oui, attend, je fait le shéma inverse ..

SELECT mail
FROM login
WHERE id IN(SELECT idLogin FROM concerne WHERE idTache='$id_tache')


C'est pas très jolis, mais ça peut très bien fonctionner !
ici, ta toutes les personnes (enfin les mails) concerner par même une tâche.
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 20:45
Merci pour la requête. J'ai fait un formulaire pour ajouter une tache avec tous les champs de la table tache et j'ai utilisé un bootstrap multiselect pour sélectionner les mails des personnes mais comment je fais pour récupérer les mails que j'ai sélectionné et les faire afficher dans chaque compte ?
Merci pour l'aide
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 20:48
Après je fais un while pour afficher les tâches ?
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 20:51
bootstrap ?? j'ai envis de dire .. wtf ?? lol
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
25 mai 2013 à 20:50
En gros ta envie de faire des taches, avec des mails .. mais qui sont sélectionner par l'utilisateur ?!..?
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 20:54
Oui.L'utilisateur ajoute une tache, il indique les personnes concernées grâce aux mails par exemple et la tache est visible par l'utilisateur qui est concerné et est visible par les autres utilisateurs indiqués.
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 21:00
Bah pourquoi pas faire .. un formulaire HTML avec email - pseudo - id, et pour chaque checkbox (case cocher) , tu récupère l'identifiant, ainsi.. pour chaque idLogin, tu rajoute idTache .. mhmh, j'suis clair ?
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 20:56
D'accord ^^
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
25 mai 2013 à 21:24
Ton problème est résolu ?
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 21:26
tu peux l'écrire ou pas?
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 22:07
roohh , un formulaire avec des lignes et une case à cocher !
l'idée que j'aurais tendance à faire c'est de donner un nom sous forme de tableau .. pour chaque lignes ;

<form action="URL" method="post">

<input type="hidden" name="id_tache" name="<?php echo idTache; ?>" />

<?php
foreach($data=mysql_fetch_assoc($req)){
?>

<input type="checkbox" name="id_login[]" value="<?php echo $idLogin; ?>"  />

<?php } ?>

</form>



pour après récupérer le tout dans une bouble php

foreach($_POST['id_login'] as $idLogin){

// Requete INSERT avec Idlogin dans la table idTache-idLogin

}




Bref, tu vois l'idée !!! à toi de bricoler et à mettre tout ça à ta sauce !
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 22:18
<form action="URL" method="post">

<?php
$cnx = mysql_connect( "localhost", "login", "password" ) ;

$sql="SELECT mail FROM login
WHERE id IN(SELECT idLogin FROM concerne WHERE idTache='$id_tache')";

$req = mysql_query($sql, $cnx) or die( mysql_error() ) ;

foreach($data=mysql_fetch_assoc($req)){
?>

<input type="checkbox" name="idLogin[]" value="<?php echo $idLogin; ?>" />

<?php } ?>

</form>



pour après récupérer le tout dans une bouble php

foreach($_POST['idLogin'] as $idLogin){

// Requete INERT avec Idlogin dans la table idTache-idLogin

$sql="INSERT INTO concerne(idTache,idLogin)
VALUES ( '$idTache', '$idLogin')";
$req = mysql_query($sql, $cnx) or die( mysql_error() ) ;

while($result=mysql_fetch_object( $requete ) ){

<td><?php echo $result-> JE NE SAIS PAS QUOI METTRE ?></td>


}
}
Est-ce que cela fonctionne sauf la derniere ligne ?
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 22:47
lol ; ta pas l'air de connaitre grand chose gui !

Quand tu fait un INSERT c'est pour UNE SEULE ligne ! pas pour plusieurs ;-)
ici l'idée c'est de bouclé plusieurs INSERT tout bêtement !


Mais il y a autre chose que tu n'a pas l'air de comprendre : c'est l' algorithmie, ou l'idée de la logique en informatique .. ou la logique tout court ! Sauf erreur de ma part !
0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 22:51
Je le sais bien que c'est pour une seule ligne.Excuse moi mais j'ai du mal en php , on a pas appris grand chose en cours.
propose moi quelque chose qui insert ajoute et affiche stp.
0
loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
Modifié par loupix57 le 25/05/2013 à 23:25
Bah tu boucle tout les identifiants mon grand !!
Enfin .. voilà le principe !


$id_tache = $_POST['id_tache'];
$all_id_login = $_POST['id_login'];


foreach($all_id_login as $id_login){

// récupère un à un tout les identifiants coché par le formulaire

$sql = "INSERT INTO concerne ('$id_login','$id_tache')";

$req = mysql_query($sql, $cnx) or die( mysql_error() ) ; 

//etc ..

}

0
gui19941992 Messages postés 42 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 26 mai 2013
25 mai 2013 à 23:26
Il me reste plus que ça à faire pour mon site.ça fait des jours que je cherche et pas moyen. Le code que tu m'as mis il y a pas grand chose en plus de la vrai réponse si?
0