Comment activer un compte utilisateur pour une durée determinée

Résolu
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 - 23 févr. 2008 à 11:11
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 - 24 févr. 2008 à 09:34
Salut, tout est dans le titre je vous met ci-dessous le code :

Activer des comptes :

<?php
mysql_connect('', '', '');
mysql_select_db('');


echo "<form action='activer_compte.php' method='post'>";
echo "<select name='inactif[]' multiple='true'>
";
$result = mysql_query("SELECT pseudo FROM membres WHERE `actif`=''");


while($options = mysql_fetch_array($result))
       echo "\t".'<option value="'.$options['pseudo'].'">'.$options['pseudo'].'</option>'."\n";
echo "</select>";
?>
Activer les comptes selectionnées :

<label>Définitivement</label>

<label>1 Heure</label>

<label>1 Jour</label>

<label>1 Mois</label>

De à

<?php
echo "";
echo "</form>";
?>



Si t'a besoin d'aide, MP !!!

10 réponses

cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
23 févr. 2008 à 13:54
Bah , ça a posté le message mais sans le texte
Je recommence :
Dans ta table 'membres' tu dois rajouter 2 dates : date_debut, date_fin qui sont les dates de validités pour la connexion.

Si tu choisis d'activer :- Définitivement : date_debut date système , date_fin '01/01/2100' par exemple ( une date qui est loin dans le calendrier ! )
- 1 heure :
date_debut date système , date_fin date système + 1 heure.
- 1 jour
:
date_debut date système , date_fin date système + 1 jour.

etc..

A la connexion du membre, tu dois vérifier que la date systéme est dans la fourchette des 2 dates:
date_deb <= date systeme <= date_fin
- Si Ok : alors la connexion est possible
- Si Ko : alors refus de connexion

++





<hr />
Life is Too Short ...
Enjoy Your Life ...





Pensez à valider les réponses qui vous satisfont
3
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
23 févr. 2008 à 15:01
Dans la mesure ou tu manipules des dates, un format DATE me parrait approprié ...
Comme tu veux pouvoir manipuler des heures aussi alors un format DATETIME est ce qu'il te faut en MySql.

exemple de requete pour mettre à jour la table membre avec validité 1 heure :



update membres set date_deb now(  )  , date_fin
ADDDATE( now() ,  INTERVAL 1  HOUR  ) where nom = 'le_nom_qu_on_veut'


Tu peux faire un INTERVAL 1 DAY , INTERVAL 1 MONTH , INTERVAL 100 YEAR

++



<hr />
Life is Too Short ...
Enjoy Your Life ...





Pensez à valider les réponses qui vous satisfont
3
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
23 févr. 2008 à 13:47
<hr />
Life is Too Short ...
Enjoy Your Life ...





Pensez à valider les réponses qui vous satisfont
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 févr. 2008 à 14:34
merci beaucoup mais peut tu préciser stp :
Quel type de champs utiliser ?
Un petit exemple serai le bienvenu stp !!!

Merci

Si t'a besoin d'aide, MP !!!
0

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

Posez votre question
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 févr. 2008 à 15:04
merci beaucoup !!

Si t'a besoin d'aide, MP !!!
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 févr. 2008 à 15:07
un dernier truc, comment puis-je faire pour savoir quel radio bouton est coché ?

Si t'a besoin d'aide, MP !!!
0
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
23 févr. 2008 à 15:50
<label>Définitivement</label>

<label>1 Heure</label>

<label>1 Jour</label>

<label>1 Mois</label>

Tu récupéres la variable durée et tu n'auras que la valeur qui aura été sélectionnée :
Par exemple : durée = "1 jour"

++
<hr />Life is Too Short ...
Enjoy Your Life ...

Pensez à valider les réponses qui vous satisfont
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
23 févr. 2008 à 15:53
ok merci alors en gros je récupère la variable $_POST['durée']

Si t'a besoin d'aide, MP !!!
0
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
23 févr. 2008 à 18:48
Correct






<hr />
Life is Too Short ...
Enjoy Your Life ...





Pensez à valider les réponses qui vous satisfont
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
24 févr. 2008 à 09:34
salut, c'est encore moi, c'est pour une dernière question : j'ai fait une condition pour la connection qui ne marche pas peus tu m'aider stp :

$connection = mysql_query("SELECT * FROM membres WHERE `pseudo`='$pseudo' AND `mot de passe`='$pass' AND actif='oui' AND date_debut<now()<date_fin");

Si t'a besoin d'aide, MP !!!
0
Rejoignez-nous