Takvim komut dosyasını mysql veritabanından dışarı çıkarmak ve sayfada görüntülemek için aşağıdaki komut dosyasını kullanıyorum. Ben standart MySQL tarih biçiminden tarihi biçimlendirmek yeniden çalışıyor ama veritabanından alınırken duyuyorum aşağıdaki hatayı alıyorum:Uyarı: date_format() 1 parametresinin DateTime olmasını bekliyor
Warning: date_format() expects parameter 1 to be DateTime, string given in C:\easyphp\www\twinfocus\managecalendar.php on line 24
Warning: date_format() expects parameter 1 to be DateTime, string given in C:\easyphp\www\twinfocus\managecalendar.php on line 24
Warning: date_format() expects parameter 1 to be DateTime, string given in C:\easyphp\www\twinfocus\managecalendar.php on line 24
Warning: date_format() expects parameter 1 to be DateTime, string given in C:\easyphp\www\twinfocus\managecalendar.php on line 24
Veritabanı (gördüğünüz gibi tarih doğru saklanır):
komut: Bu fonksiyon için DateTime nesnesi geçmesi gerekiyor
<?php
$sql2 = <<<SQL
SELECT *
FROM `calendar`
SQL;
if(!$result2 = $db->query($sql2)){ die('There was an error running the query [' . $db->error . ']');}
echo '<table class="admintable"> <thead>';
echo '<tr><th>Client Names</th><th>Email</th><th>Tel</th><th>Wedding Date</th><th>Date Created</th><th>Start Time</th><th>End Time</th><th>Price</th><th>Location</th><th>Other Info</th><th>Edit</th><th>Delete</th></tr></thead>';
while($row2 = $result2->fetch_assoc()){
$weddingdate = $row2['weddingdate'];
$formattedweddingdate = date_format($weddingdate, 'd-m-Y');
echo '<tr><td>'.$row2['name'].'</td><td>'.$row2['email'].'</td><td>'.$row2['tel'].'</td><td style="min-width:70px;">'.$formattedweddingdate.'</td><td style="min-width:70px;">'.$row2['datecreated'].'</td><td>'.$row2['starttime'].'</td><td>'.$row2['endtime'].'</td><td>£'.$row2['price'].'</td><td>'.$row2['location'].'</td><td style="min-width:400px;">'.$row2['otherinfo'].'</td><td><a href="managecalendar.php?&key='.$key.'&editwedding='.$row2['id'].'">Edit</a></td><td><a href="calenderdelete.php?&key='.$key.'&delwedding='.$row2['id'].'">Delete</a></td></tr>';}
echo '</table>';
?>
date ($ weddingdate, 'd-m-Y'); –
@Pramod Sizin parametreniz yanlış yoldur ... – Clive
Bence insanlar uyarı gördüklerinde panikliyorlar ve okumazlar. Uyarı, fonksiyonun "DateTime" örneğini beklediğini ancak "string" kelimesini değiştirdiğini ve böylece '$ weddingdate' değişkeninin tarih dizgisini içerdiğini söyler, böylece ihtiyacınız olan tüm şey DateTime öğesinin nesnesi oluşturmaktır (örneğin 'date_format (yeni DateTime ($) weddingdate), $ requestedFormat) ') – Leri