+ Répondre à la discussion
Affichage des résultats 1 à 16 sur 16
  1. #1
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut Effectuer une requête après x jours.

    Salut !
    Pour le système de bannissements, je voudrais effectuer une requête (update) après un certain nombre de jours.
    J'explique : le modérateur entre par exemple "5" dans le champ de texte, et 5 jours après l'appui sur le bouton d'envoi, une requête update s'execute automatiquement. Comment faire ? Merci.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

    Par défaut

    Plus simplement, calcule (aujourd'hui + x jours) et enregistre la date de fin de bannissement.
    Si la date de fin de bannissement < aujourd'hui, l'utilisateur n'est plus banni.

  3. #3
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Ça collera pas.

    Voici la partie dans "traitement_connexion.php" qui vérifie si le membre est ban :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $req6 = $pdo->prepare("SELECT * FROM bannissements WHERE id_du_membre = :identifiant_ban AND statut = :statut");
    	$req6->execute(array("identifiant_ban" => $_SESSION["id"], "statut" => "en_cours"));
    	$resultat_ban = $req6->fetch();
    		if(!$resultat_ban) {
    			header("Location: index.php");
    		}
    		else {
    			header("Location: ban.php");
    		}
    Et dans "ban.php" il y a (à la fin) un « session_destroy(); ».
    Je veux donc qu'après x jours, un update modifie le champ "statut" pour lui donner comme valeur "fini".

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

    Par défaut

    Comme tu as pu le remarquer, ta methode te mène dans une impasse.
    C'est pour ça que je t'en propose une autre.

  5. #5
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Donc si le champ qui dit si le membre est banni ou non se trouve dans ma table "membres", le motif & les autres infos je les mets où ?

  6. #6
    Responsable Développement Web


    Avatar de Bovino
    Homme Profil pro Didier Mouronval
    Développeur Web
    Inscrit en
    juin 2008
    Messages
    22 420
    Détails du profil
    Informations personnelles :
    Nom : Homme Didier Mouronval
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2008
    Messages : 22 420
    Points : 87 214
    Points
    87 214
    Billets dans le blog
    4

    Par défaut

    La méthode proposée par sabotage est de loin meilleure que la tienne.
    Ensuite, rien ne t'empêche d'avoir dans ta table "membres" un champ booléen "banni" et une table "ban" indiquant pour chaque membre banni les infos relatives au bannissement.
    Avec l'id du membre, tu peux facilement faire le lien entre les deux tables...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

    Par défaut

    Tu peux garder ta table bannissement.

  8. #8
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Je vais essayer, mais par contre, je sais pas du tout comment executer mon update automatiquement après x jours (pour modifier le champ). Une idée ?

  9. #9
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

    Par défaut

    Tu n'as pas compris le principe : il n'y a rien a mettre à jour au bout de x jours.
    Le statut de bannissement est déduis de la date de fin de bannissement.

  10. #10
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Je ne comprends toujours pas.

  11. #11
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

    Par défaut

    Si ma date de fin de bannissement est au 1er janvier 2013, au 29 décembre 2012, je suis banni ; au 6 janvier 2013, je ne suis pas banni.
    Il n'y a rien a mettre à jour.

  12. #12
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Je vois. Et comment je peux faire pour ma question sur le formulaire ? Le fait de rentrer le nombre de jours du ban.

  13. #13
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

    Par défaut

    Je suppose que par "automatiquement" tu veux dire sans rafraichissement de la page, il faut donc utiliser Ajax.

  14. #14
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Non à la base je voulais savoir comment executer une requête automatiquement après un laps de temps en jours.
    Par exemple si je rentre "5" dans mon formulaire, la requête doit s'executer 5 jours plus tard automatiquement.

  15. #15
    Modérateur
    Avatar de sabotage
    Homme Profil pro Vincent
    Inscrit en
    juillet 2005
    Messages
    21 438
    Détails du profil
    Informations personnelles :
    Nom : Homme Vincent

    Informations forums :
    Inscription : juillet 2005
    Messages : 21 438
    Points : 31 237
    Points
    31 237

  16. #16
    Futur Membre du Club
    Inscrit en
    décembre 2012
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 67
    Points : 16
    Points
    16

    Par défaut

    Merci.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •