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 :

chat delete message après 24 heures [PDO]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Par défaut chat delete message après 24 heures
    Bonjour, voilà j'ai un légers soucis pour un delete dans un tchat toute les 24 heures, voici le script de traitement et de lecture.

    le delete fonction mais en trois seconde

    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
    <?PHP
    session_start();
     
    require("function.php");
    $connection = connexion_db ();
     
    $pseudo = (isset($_POST["pseudo"])) ? $_POST["pseudo"] : NULL;
    $message = (isset($_POST["message"])) ? $_POST["message"] : NULL;
     
     
     
     
            $pseudo_chat = $_POST["pseudo"]; 
            $message = $_POST["message"];
            $mess_date = date("Y-m-d");
    		$mess_heure = date("H:i");
    		$temp = (3600*24);
     
     
     
    	             $messa=array(':pseudo_chat'=> $pseudo_chat,':message'=> $message,':mess_date'=>$mess_date,':mess_heure'=>$mess_heure,':temp'=> $temp);	
    	             $values_messa = join(', ',array_keys($messa));
                     $req_messa=$connection->prepare( 'INSERT INTO messages_chat ('.str_replace(':','',$values_messa).') VALUES('.$values_messa.')' );
                     $req_messa->execute($messa);
     
     
     
    ?>
    Lecture

    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
    <?PHP
     
         require("function.php");
         $connection = connexion_db ();
     
     
     
     
    echo'<style type="text/css">
    .color_date {
    	color: #00F;
    }
    </style>';
     
         $sql  = $connection->query('SELECT * FROM messages_chat ORDER BY id DESC');
         $sql->execute();
         while($data = $sql->fetch(PDO::FETCH_OBJ)){
     
    	echo('<span class="color_date">'.$data->mess_date.'&nbsp;&agrave;&nbsp;'.$data->mess_heure.'</span><b>
    	&nbsp;:&nbsp;</b><b>'.$data->pseudo_chat."</b>:".stripslashes(htmlspecialchars($data->message)).'<br>');	 
     
     
     
     
    $supprimer = time() - $data->temp;		 
    $delete_chat  = $connection->prepare('DELETE FROM messages_chat WHERE temp< :temps');
    $delete_chat->execute(array(':temps'=> $supprimer));
     
    }

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ta colonne temps contient toujours la même valeur, donc forcemment ça ne fonctionne pas.

    Mais bon, une seule colonne DATETIME sera plus efficace que tes 3 colonne actuelles :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $connection->exec('DELETE FROM messages_chat WHERE mes_datetime < DATE_SUB(NOW(), INTERVAL 1 DAY)');
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Par défaut
    Merci d'avance super sympa à toi

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

Discussions similaires

  1. [MYSQL5-Tomcat] SocketException après quelques heures
    Par castrogne dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 06/08/2007, 16h58
  2. Comment sauvegarder un message après l'envoi
    Par bassbaki dans le forum JSF
    Réponses: 2
    Dernier message: 12/06/2007, 17h15
  3. [VBA-E] Eviter l'affichage de certains messages après un copier/coller
    Par skystef dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/03/2007, 18h13
  4. Message après "copy"
    Par licorne dans le forum Langage
    Réponses: 2
    Dernier message: 28/10/2005, 09h34
  5. Réponses: 1
    Dernier message: 12/04/2005, 20h36

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