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

PHP & Base de données Discussion :

Problème gèle d'utilisateur [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2008
    Messages : 67
    Par défaut Problème gèle d'utilisateur
    Bonsoir, je suis entrain de réaliser un site web avec une gestion de membre (Supprimer un membre, bannir un membre...).
    Cet après-midi, j'ai commencer à m'attaquer à la partie où l'admin peut geler un membre (pendant plusieurs heures mais ne dépassant jamais une semaine), mais voilà, après plusieurs heures de bidouillages ça ne marche pas du tout...

    Si quelqu'un pouvait m'aider à éclairer ce mystère...

    Voilà ici le bout de code concernant la partie pour geler un utilisateur :
    (le problème devrait se situer près de "if((isset($_POST['geler'])) && (($_POST['geler']) == "Geler")){" car lorsque je mets ce passage en commentaire j'arrive à afficher un message d'erreur, mais lorsque ce n'est pas en commentaire ça ne m'affiche rien du tout)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    if(isset($_GET['geler_user'])){
    				?>
    					<table align="center">
    						<form method="post" action="gestion_compte.php">	
    							<tr>
    								<td><b>Dur&eacute;e du gel</b> (en heure) : </td><td><input type="text" name="temps_gel" value="<?php echo $_POST['geler'] ?>" size="20"></td><td><input type="submit" value="Geler" name="geler" class="bouton"></td>
    							</tr>
    						</form>
    					</table>
    					<center>(dur&eacute;e ne pouvant exc&eacute;der une semaine!)<br /><br /></center>
    				<?php
    					$temps_gel = htmlentities(addslashes($_POST['temps_gel']));
    					if((isset($_POST['geler'])) && (($_POST['geler']) == "Geler")){
    						if((isset($temps_gel)) && (!empty($temps_gel)) && ($ban_membre == 0) && ($confirmation_membre == 1) && ($level_membre < $level_admin) && ($temps_gel < 168)){
    							if($temps_gel < 0){
    								$temps_gel = $temps_gel * -1;							
    							}	
    							$temps_gel = ceil($temps_gel);								
    							$gel_heures = time() + ($temps_gel * 60 * 60);
    							mysql_query("UPDATE utilisateur SET ban = 1, level = -1, time_gel='$temps_gel' WHERE id_user='".$_GET['id_user']."'") or die('Erreur SQL :<br />'.mysql_error());
    							echo '<span class="ok"></span>'.$login_membre.' est banni durant : '.$temps_gel.' heure(s)!<br />';
    						}
    						elseif(empty($temps_gel)){
    							$erreur = ' ';
    							echo '<span class="erreur"></span>Vous n\'avez pas entr&eacute; la dur&eacute;e du gel!<br />';	
    						}
    						elseif($temps_gel > 168){
    							$erreur = ' ';
    							echo '<span class="erreur"></span>Vous ne pouvez pas geler '.$login_membre.' plus d\'une semaine!<br />';	
    						}
    						elseif($confirmation_membre == 0){
    							$erreur = ' ';
    							echo '<span class="erreur"></span>'.$login_membre.' n\'a pas encore valid&eacute; son compte!<br />';	
    						}
    						elseif($ban_membre == 1){
    							$erreur = ' ';
    							echo '<span class="erreur"></span>'.$login_membre.' est d&eacute;j&agrave; banni!<br />';	
    						}
    						elseif($temps_gel > 0){
    							$erreur = ' ';
    							echo '<span class="erreur"></span>'.$login_membre.' est d&eacute;j&agrave; gel&eacute; pour encore '.$temps_gel.' heure(s)!<br />';
    						}
    						elseif($level_membre >= $level_admin){
    							$erreur = ' ';
    							echo '<span class="erreur"></span>Vous ne pouvez geler un membre de votre rang ou de rang sup&eacute;rieur!<br />';	
    						}
    					}
    			}
    MERCI.

    ps : si vous avez besoin de toute la partie de cette page demandez le

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Tu as un champ submit qui s'appelle geler et un champ text qui s'appelle temps_gel.
    Ce qui déjà ressemble à un bug, c'est que tu utilises l'un comme valeur de l'autre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="text" name="temps_gel" value="<?php echo $_POST['geler'] ?>"

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2008
    Messages : 67
    Par défaut
    Oui, j'avais mis ça pour qu'après que l'admin est entré le nombre d'heure, le chiffre reste dans l'input après qu'il ai validé le formulaire.
    En le supprimant ça ne change rien à mon problème

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Une question: le source que tu postes dans le message, c'est bien une partie de gestion_compte.php?
    Parce que d'après le source le post se fait avec action="gestion_compte.php" (sans paramètre dans l'URL donc) mais en même temps il teste s'il y a une variable $_GET['geler_user'] donc ça suppose qu'il y ait ce paramètre dans l'URL.
    Et aussi la requête update a besoin d'une variable $_GET['id_user'] dont on ne voit pas forcément d'où elle va sortir si tout ce script est appelé par un POST sans paramètre dans l'URL.

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

Discussions similaires

  1. Problème d'ID utilisateur
    Par Magicmodjo dans le forum SharePoint
    Réponses: 0
    Dernier message: 06/05/2008, 11h58
  2. Réponses: 2
    Dernier message: 13/06/2007, 23h35
  3. Problème de quotas utilisateur
    Par LAMARE dans le forum Oracle
    Réponses: 10
    Dernier message: 14/11/2006, 12h18
  4. Apache2 sur CentOS: Problème d'acces utilisateur
    Par Faith's Fall dans le forum Apache
    Réponses: 11
    Dernier message: 03/06/2006, 22h13
  5. [Win XP] Problème avec les utilisateurs
    Par digital prophecy dans le forum Windows XP
    Réponses: 3
    Dernier message: 05/05/2006, 12h52

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