Comment lier une tâche à plusieurs utilisateurs en php

gui19941992 Messages postés 46 Statut Membre -  
loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   -
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.

23 réponses

  • 1
  • 2
  1. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  2. gui19941992 Messages postés 46 Statut Membre
     
    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
  3. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  4. gui19941992 Messages postés 46 Statut Membre
     
    Oui mais comment on sélectionne les personnes concernées par une même tâche et pour l'afficher dans chaque compte
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  7. gui19941992 Messages postés 46 Statut Membre
     
    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
  8. gui19941992 Messages postés 46 Statut Membre
     
    Après je fais un while pour afficher les tâches ?
    0
  9. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    bootstrap ?? j'ai envis de dire .. wtf ?? lol
    0
  10. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    En gros ta envie de faire des taches, avec des mails .. mais qui sont sélectionner par l'utilisateur ?!..?
    0
  11. gui19941992 Messages postés 46 Statut Membre
     
    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
  12. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  13. gui19941992 Messages postés 46 Statut Membre
     
    D'accord ^^
    0
  14. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    Ton problème est résolu ?
    0
  15. gui19941992 Messages postés 46 Statut Membre
     
    tu peux l'écrire ou pas?
    0
  16. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  17. gui19941992 Messages postés 46 Statut Membre
     
    <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
  18. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  19. gui19941992 Messages postés 46 Statut Membre
     
    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
  20. loupix57 Messages postés 316 Date d'inscription   Statut Membre Dernière intervention   14
     
    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
  21. gui19941992 Messages postés 46 Statut Membre
     
    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
  • 1
  • 2