Afficher la date et l'heure dans mon chat.

Résolu/Fermé
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016 - 2 nov. 2016 à 22:09
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016 - 13 nov. 2016 à 10:08
Bonsoir à tous,
je suis entrain de coder un chat avec la date et l'heure du message en mode francophone avant le pseudo.Le probléme est quej'arrive pas a récuperer et afficher la date et l'heure .
Voici mes codes:

une partie de:minichat.php

<?php
// Connexion à la base de données
try
{
	$bdd = new PDO('mysql:host=localhost;dbname=dbchat;charset=utf8', 'root', '');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}

// Récupération des  messages
$reponse = $bdd->query('SELECT  DATE_FORMAT(date_creation, '%d/%m/%Y %Hh%imin%ss') AS date,pseudo, message FROM chat')
// Affichage des messages 
while ($donnees = $reponse->fetch())
{
	echo '<p><strong>' . htmlspecialchars($donnees['date_creation']). htmlspecialchars($donnees['pseudo']) . '</strong> : ' . htmlspecialchars($donnees['message']) . '</p>';
}

$reponse->closeCursor();

?>
    </body>
</html>



minichat_post.chat

<?php

// Connexion à la base de données

try

{

    $bdd = new PDO('mysql:host=localhost;dbname=dbchat;charset=utf8', 'root', '');

}

catch(Exception $e)

{

       
 die('Erreur : '.$e->getMessage());


}


// Insertion du message à l'aide d'une requête préparée

$req = $bdd->prepare('INSERT INTO chat (pseudo, message) VALUES(?, ?)');

$req->execute(array($_POST['pseudo'], $_POST['message']));


// Redirection du visiteur vers la page du minichat

header('Location: minichat.php');

?>


Quand je poste un message seuls apparaissent le pseudo et le message mais non la date et l'heure.mais dans la table il ya l'eure en format anglais.

Merci d'avance pour votre aide.




2 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
3 nov. 2016 à 10:06
Salut,

Tu utilises un alias pour le champ date_creation dans ta requête (mot clé AS) :
SELECT DATE_FORMAT(date_creation, '%d/%m/%Y %Hh%imin%ss') AS date


Il faut donc utiliser cet alias pour accéder à la donnée :
$donnees['date']


Bonne journée
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016
3 nov. 2016 à 12:10
Bonjour Pilet,
Excuse moi j'ai commis une erreur de frappe.A la place de "AS date "j'avais mis "AS date_creation" du nom de la collonne des dates sur la table "chat".
Cependant je ne vois toujours pas le procécédé que vous m'avez suggeré.


Merci à+. bonne journée.
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
3 nov. 2016 à 12:25
Tu peux essayer de faire un var_dump($donnees); dans la boucle while pour voir les données que tu récupères.
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016
5 nov. 2016 à 11:45
Bonjour Pilet,

Je crois que je n'avais pas encore appris la fonction " var_dump" mais j'ai essayer de chercher le mode d'emploi sur le net.Je ne suis pas sur mais voilà ce que j'ai fait:
// Récupération  message
$reponse = $bdd->query('SELECT * FROM chat ');

// Affichage de chaque message 
while ($donnees = $reponse->fetch())
{
    echo '<p>'var_dump($donnees); '</p>';
}

$reponse->closeCursor();

?>
    </body>
</html


Cependant le résultat est le meme j'ai le pseudo et le message mais pas la date qui est pourtant presente dans la table"chat"

Merci bonne journée.
0
jordane45 Messages postés 38160 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 mai 2024 4 657
5 nov. 2016 à 18:09
Bonjour,
Si ton var_dump ne t'affiche pas la colonne "date" .... c'est que cette colonne n'existe pas ..

Peux tu nous faire un DUMP sql de ta table ?
(si tu ne sais pas comment faire : https://www.techrepublic.com/blog/smb-technologist/import-and-export-databases-using-phpmyadmin/
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016 > jordane45 Messages postés 38160 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 mai 2024
6 nov. 2016 à 10:04
bonjour,
Le lien m'envoie a une page mais il y a ce message"
Oops! Looks like this page has been removed or no longer exists...
  • scratches head* "

J'ai essayer de chercher ailleurs "faire un DUMP de la table " mais je ne sais vraiment pas quoi et comment faire.

Merci encore et bonne journée.
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016 > jordane45 Messages postés 38160 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 mai 2024
13 nov. 2016 à 10:08
Bonjour à tous et merci pour l'aide.J'ai trouveé le bonheur en continuant a chercher .Voici la solution si ça peut aider.

minichat.php

   <!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Mini-chat</title>
    </head>
   

    <style>
    form
    {
        text-align:center;
    }
    </style>
    <body>
    
    <form action="minichat_post.php" method="post">
        <p>
        <label for="pseudo">Pseudo</label> : <input type="text" name="pseudo" id="pseudo" ><br />
  
        <label for="message">Message</label> :  <input type="text" name="message" id="message" /><br />

        <input type="submit" value="Envoyer" />
    </p>
    </form>

<?php
// Connexion à la base de données
try
{
    $bdd = new PDO('mysql:host=localhost;dbname=dbchat;charset=utf8', 'root', '');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}


// recuperation message

$dat = date("d/m/Y H:i:s"); 
$reponse = $bdd->query("SELECT pseudo, message, DATE_FORMAT(dat, '%d/%m/%Y à %Hh%imin%ss') AS date_fr FROM chat ORDER BY ID DESC");
  
// Affichage de chaque message (toutes les données sont protégées par htmlspecialchars)
while ($donnees = $reponse->fetch())
{
    echo '<p><center> Le ' . $donnees['date_fr']. ':<strong> ' . htmlspecialchars($donnees['pseudo']) . '</strong> : ' . htmlspecialchars($donnees['message']) . '</center></p>';
}
  




$reponse->closeCursor();

?>
    


    </body>
</html>





minichat_post.php

<?php

 Connexion à la base de données
try
{
   $bdd = new PDO('mysql:host=localhost;dbname=dbchat;charset=utf8', 'root', '');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}
//Insertion du message à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO chat (pseudo, message,dat ) VALUES(?, ?,NOW())');

$req->execute(array($_POST['pseudo'], $_POST['message']));

// Redirection du visiteur vers la page du minichat
header('Location: minichat.php');
?>
0