2017-08-27 1 views
0

alors je veux récupérer les données téléchargées aujourd'hui seulement, j'ai ajouté curdate() lors de la récupération des données mais il n'y a pas de données trouvées. J'ai téléchargé des données, mais cela ne fonctionne pas. voici mon code php de récupération de données. Je l'ai fait gagner du temps lors du téléchargement des données comme $time = date("F j, Y, h:i a"); qui a une sortie comme celui-ci dans la base de données « 22 Août, 2017, 19:25 »J'ai ajouter une requête de temps lors de la récupération des données mais il n'y a pas de données trouvées dans php

<?php 
 
\t \t \t \t \t require_once 'dbconfig.php'; 
 

 
\t $stmt = $DB_con->prepare('SELECT vid, session,time ,views ,name, videoname, image, url FROM video where type = "Video/Trailer" && DATE(`time`) = CURDATE() ORDER BY views DESC LIMIT 8'); 
 
\t $stmt->execute(); 
 
\t if($stmt->rowCount() > 0) 
 
\t { 
 
\t \t while($row=$stmt->fetch(PDO::FETCH_ASSOC)) 
 
\t \t { 
 
\t \t \t extract($row); 
 
\t \t \t 
 
\t \t \t { 
 
$play = " single.php?vid=$vid"; 
 
} 
 
?>

+0

Vous devez définir le type de données de la colonne avec des dates sur 'datetime'. –

+0

comment s'il vous plaît pouvez-vous expliquer ou peut montrer dans ce code @ MartinHeralecký –

Répondre

2

Vous utilisez des ennuis parce que vous êtes stocker vos dates dans une chaîne non standard comme: "22 août 2017, 19h25". Lorsque vous essayez de le réintégrer dans une date, la base de données ne peut pas l'analyser. Essayez:

SELECT DATE('August 22, 2017, 07:25 pm'); // will return NULL 

Si vous souhaitez enregistrer les dates que chaîne, MySQL va attendre 2017-08-22 19:25:00

SELECT DATE('2017-08-22 19:25:00'); // will return 2017-08-22 

Donc, si vous voulez stocker vos dates que la chaîne, modifiez:

$time = date("F j, Y, h:i a"); 

Pour

$time = date("Y-m-d H:i:s"); 

B Le fait de stocker des dates sous forme de chaîne présente de sérieuses limitations. Pour un, vous devez appeler la fonction DATE ci-dessus pour le remettre dans une date. Ce sera beaucoup préférable de stocker des dates comme le type approprié (par exemple: datetime). Cela vous permettra d'effectuer des opérations de date beaucoup plus rapides.

Changez donc le type de colonne de table si vous le pouvez, ou changez le format de chaîne que vous utilisez pour enregistrer les dates.

+0

Merci cela a fonctionné. –