probleme avec la date

Petit nouveau ! | 6 Messages

01 sept. 2012, 20:29

Salut à tous
j'ai deux pages l'une pour ajouter un nouveau billet et l'autre qui affiche le titre de billets et la date
mon probleme est: la date affiche que de 0000-00-00 00:00:00 au lieu de par exemple 2012-08-10 16:54:28
je sais meme pas le prblem viens de quelle page.
Merci de m'avoir aider

page qui affiche le billet
<?php session_start();?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Liste des billets</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<link rel="stylesheet" title="monstyle" href="style.css" />
        <style type="text/css">
        h2, th, td
        {
            text-align:center;
        }
        table
        {
            border-collapse:collapse;
            border:2px solid black;
            margin:auto;
        }
        th, td
        {
            border:1px solid black;
        }
        </style>
    </head>
    <body> 
	
	<?php
          include 'menu.php';
        ?> 
<h2><a href="rediger_billets.php">Modifier/Supprimer un billet</a></h2>
<?php
try 
{
$pdo = new PDO('mysql:host=localhost;dbname=User', 'root', '');
} 
catch (PDOException $e) {
die( "Erreur !: " . $e->getMessage() );
}
  
 
//-----------------------------------------------------
// Vérification 1 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
    $titre = addslashes($_POST['titre']);
    $contenu = addslashes($_POST['contenu']);
    // On vérifie si c'est une modification de news ou non.
    if ($_POST['id_billets'] == 0)
    {
        // Ce n'est pas une modification, on crée une nouvelle entrée dans la table.
        $pdo->query("INSERT INTO billets VALUES('', '" . $titre . "', '" . $contenu . "', '" . time() . "')");
    }
    else
    {
        // On protège la variable "id_news" pour éviter une faille SQL.
        $_POST['id_billets'] = addslashes($_POST['id_billets']);
        // C'est une modification, on met juste à jour le titre et le contenu.
        $pdo->query("UPDATE billets SET titre='" . $titre . "', contenu='" . $contenu . "' WHERE id='" . $_POST['id_billets'] . "'");
    }
}
 

// Vérification 2 : est-ce qu'on veut supprimer une news ?

if (isset($_GET['supprimer_billets'])) // Si l'on demande de supprimer une news.
{
    // Alors on supprime la news correspondante.
    // On protège la variable « id_news » pour éviter une faille SQL.
    $_GET['supprimer_billets'] = addslashes($_GET['supprimer_billets']);
    $pdo->query('DELETE FROM billets WHERE id=\'' . $_GET['supprimer_billets'] . '\'');
}
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
<th>Date</th>
</tr>
<?php
$retour = $pdo->query('SELECT * FROM billets ORDER BY id DESC');
while ($donnees = $retour->fetch()) // On fait une boucle pour lister les news.
{
?>
<tr>
<td><?php echo '<a href="rediger_billets.php?modifier_billets=' . $donnees['id'] . '">'; ?>Modifier</a></td>
<td><?php echo '<a href="blog_ajout.php?supprimer_billets=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
<td><?php echo stripslashes($donnees['titre']); ?></td>
<td><?php echo date( $donnees['date_creation']); ?></td>
</tr>
<?php
} // Fin de la boucle qui liste les news.
?>
</table>
</body>
</html>

page pour rediger billet
<?php session_start();?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Rédiger une news</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        h3, form
        {
            text-align:center;
        }
        </style>
    </head>
    <body>

<h3><a href="blog_ajout.php">Retour à la liste des billets</a></h3>
<?php
try 
{
$pdo = new PDO('mysql:host=localhost;dbname=User', 'root', '');
} 
catch (PDOException $e) {
die( "Erreur !: " . $e->getMessage() );
}
 
if (isset($_GET['modifier_billets'])) // Si on demande de modifier une news.
{
    // On protège la variable « modifier_news » pour éviter une faille SQL.
    $_GET['modifier_billets'] = (htmlspecialchars($_GET['modifier_billets']));
    // On récupère les informations de la news correspondante.
    $retour = $pdo->query('SELECT * FROM billets WHERE id=\'' . $_GET['modifier_billets'] . '\'');
    $donnees = $retour-> fetch();
    
    // On place le titre et le contenu dans des variables simples.
    $titre = stripslashes($donnees['titre']);
    $contenu = stripslashes($donnees['contenu']);
	//$date_creation = date( $donnees['date_creation']); 
    $id_billets = $donnees['id']; // Cette variable va servir pour se souvenir que c'est une modification.
}
else // C'est qu'on rédige une nouvelle news.
{
    // Les variables $titre et $contenu sont vides, puisque c'est une nouvelle news.
    $titre = '';
    $contenu = '';
	//$date_creation = '';
    $id_billets = 0; // La variable vaut 0, donc on se souviendra que ce n'est pas une modification.
}
?>
<form action="blog_ajout.php" method="post">
<p>Titre : <input type="text" size="30" name="titre" value="<?php echo $titre; ?>" /></p>
<p>
    Contenu :<br />
    <textarea name="contenu" cols="50" rows="10">
    <?php echo $contenu; ?>
    </textarea><br />
    
    <input type="hidden" name="id_billets" value="<?php echo $id_billets; ?>" />
    <input type="submit" value="Envoyer" />
</p>
</form>
</body>
</html>

Eléphant du PHP | 229 Messages

01 sept. 2012, 21:03

Bonsoir,
"time() retourne l'heure courante, mesurée en secondes depuis le début de l'époque UNIX, (1er janvier 1970 00:00:00 GMT). "
http://www.php.net/manual/fr/function.time.php

Ne doit pas correspondre a ta table SQL qui doit attendre un format Date ou datetime.

Bon codage.