我无法操作两个数据库。 如果有等于日期的数据,我会在一列中打印平均值。 如果没有等于日期的数据,我会收到以下错误。 我需要输入一个“else”,但是当我输入时我无法让它运行。 我的代码如下;
query("SELECT * FROM yemeklistesi"); //burada satırları dizi olarak çektik $rows = $Sor->fetchAll(PDO::FETCH_ASSOC); foreach ($rows as $row) { $id = $row['id']; $kullaniciadi = $row['yemek']; $sifre = $row['tarih']; ?>query("SELECT * FROM yemekhane_anket"); $bilgilercek=$bilgiler->fetchAll(PDO::FETCH_ASSOC); $say = 0; $mem = 0; foreach ($bilgilercek as $row2) { $a = strtotime($row2['tarih']); if(strval($row['tarih']) == strval(date('Y-m-d',$a))){ $say = $say + 1; } if(strval($row['tarih']) == strval(date('Y-m-d',$a)) && strval($row2['memnuniyet_durumu']) == '1'){ $mem = $mem + 1; } } echo round(intval($mem) * 100/intval($say)); ?> %
我建议您检查条件之前或内部的值不为空,并且能够以特定格式创建 dateTime 对象
如果日期时间字符串能够创建日期时间对象,上面将返回日期时间对象,否则将返回FALSE布尔值。这样你就可以执行你的 else 部分。