IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

[SQL] Gestion du TEMPS


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 35
    Par défaut [SQL] Gestion du TEMPS
    Bonjour à toutes et à tous,

    Je suis actuellement Stagiaire dans une communauté des communes. On me demande de faire un formulaire. Une fois que l'utilisateur a rempli tous les champs du formulaire, un mail est envoyé à l'admin , avec un lien permettant de confirmer l'intégration des infos dans la base de donées adéquate.

    Ceci fait, je voudrais maintenant, qu'une fois que l'admin ai cliqué sur le lien , cela enclenche une sorte de temporisation qui va supprimer automatiquement l'offre ajoutée dans le formulaire, et donc dans la table après un laps de temps (par exemple 2 Mois).

    J'ai beaucoup cherché sur le net , mais je n'ai pas trouvé comment faire cela... ...

    Quelqu'un aurait la solution?

    Merci d'avance

    Cordialement,
    MoKeS

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 22
    Par défaut
    Ajoute un champ "date_creation" et tu y insères la date de création.
    Ensuite, suffirait de trouver un moyen de lancer la suppression régulièrement avec une requête qui se baserait sur la date_creation+2mois. Si c'est sur un site, la page d'accueil c'est pas mal, par contre faudrait trouver un moyen pour que ça lance le script 1 fois dans la journée par exemple.

    @+! Samy

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 35
    Par défaut
    à vrai dire, un des champs de la table a déja pour valeur la date de la création de la ligne... mais je ne vois pas trop comment faire... J'avais essayé quelque chose avec la création d'évenement :

    J'ai pris 1 MINUTE pour tester.
    J'active cette requete des que l'admin clique sur le lien
    $timer = "
    CREATE EVENT TIMER
    ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 MINUTE
    DO DELETE FROM logement WHERE adresse='".$new_adresse."' AND chauffage='".$new_chauffage."'AND sanitaire='".$new_sanitaire."'AND piece='".$new_piece."'AND surface='".$new_surface."'AND annexe='".$new_annexe."'AND loyer='".$new_loyer."'AND charge='".$new_charge."'AND nom_contact='".$new_prenom_nom."'AND adresse_contact='".$new_adresse_contact."'AND telephone_contact='".$new_telephone."'AND email='".$new_mail."'AND date='".$new_date."'";

    J'ai retourné un mysql error(), il me fait une erreur disant :

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'EVENT TIMER ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 MI

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 22
    Par défaut
    Comme dit, si en plus c'est au niveau de l'administration que ça doit disparaître, sur la page de connexion tu ajoutes une requête DELETE toute simple qui supprime tous les enregistrements dont date_creation+2mois est inférieur à la date du jour.

    Personnellement je n'ai jamais utilisé d'évènement en SQL, mais 2 mois ça me paraît long...ça va vraiment être traité si le serveur est rebooté entre temps ?

    @+! Samy

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 35
    Par défaut
    Justement, c'est la question que je me pose... Je ne sais pas si cet évenement va rester "en mémoire".

    Il n'y a pas vraiment de zone d'administration...comme dit, la personne qui gère les réponses de ce formulaire recoit donc un mail après qu'une annonce ait été rajoutée, et elle a le choix de confirmer cette annonce (elle se met en ligne automatiquement), ou bien de supprimer l'annonce (suppression dans la table).

    Donc cet "évenement" devra être executé en meme temps que la "mise en ligne" de l'offre.
    Je suis entrain d'essayer de le faire avec php... avec la fonction time(). Si ca ne marche pas , je pense rester sur ta solution, un lien simple envoyé par mail permettant de supprimer toutes les lignes dont la date de création est supérieur à 2 mois.....

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 22
    Par défaut
    Si les annonces se mettent en ligne, y'a forcément un site qui est visité...donc pour moi pas besoin d'envoyer un mail pour valider/lancer la suppression des anciennes annonces.

    Sur la page d'affichage des annonces, suffirait de directement mettre en place la requête de suppression en PHP (puisqu'elle ne supprimera que les anciennes annonces obsolètes). Après, on peut éviter que cette requête se lance à chaque fois éventuellement...et encore, si y'a plus rien à supprimer tant pis, c'est pas si grave qu'elle se lance (le test de savoir si elle a déjà été lancée serait peut-être plus long à être traité).

    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/05/2011, 17h49
  2. [SQL server] Gestion du temps
    Par Chtulus dans le forum Développement
    Réponses: 2
    Dernier message: 02/06/2008, 16h52
  3. Gestion des Temps dans Base Sql Server par Delphi
    Par BYALI dans le forum Bases de données
    Réponses: 4
    Dernier message: 09/03/2008, 14h09
  4. [VB.NET] Gestion en temps réel d'une bdd access
    Par qwiskas dans le forum Windows Forms
    Réponses: 6
    Dernier message: 12/02/2005, 19h37
  5. fonction de gestion du temps
    Par fati dans le forum C
    Réponses: 5
    Dernier message: 26/12/2002, 16h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo