2014-11-03 118 views
-1
<?php 


$result = mysqli_query($conn,"SELECT * FROM news ORDER BY date DESC 
LIMIT 5")or die(mysql_error()); 



if (!$result) { 
    printf("Error: %s\n", mysqli_error($conn)); 
    exit(); 
} 
echo "<table align='left' CELLPADDING='50' >"; 

while($row = mysqli_fetch_array($result)) 
{ 

    if ($row['photoid'] == NULL){ 

$date_string = $row['date']; 

$date = strtotime($date_string); 
$date = date('m/d/y', $date); 

echo "<tr>"; 
echo "<td style='width: 750px'>" .$row['title'] . "</td>"; 
echo "</tr>"; 
echo "<tr>"; 
echo "<td style='width: 700px'>" . $row['news'] . "</td>"; 
echo "<td style='width: 100px'>" . $date . "</td>"; 
echo "</tr>"; 
    } 
    else 
    { 
     $result = mysqli_query($conn,"SELECT news.title,news.date,news.news,photo.photo FROM news, photo WHERE news.photoid = photo.photoid ORDER BY date DESC") or die(mysql_error()); 
     $row = mysqli_fetch_array($result); 
     $date_string = $row['date']; 

$date = strtotime($date_string); 
$date = date('m/d/y', $date); 

echo "<tr>"; 
echo "<td style='width: 750px'>" . $row['title'] . "</td>"; 
echo "</tr>"; 
echo "<tr>"; 
echo "<td style='width: 700px'>" . $row['news'] . "</td>"; 
echo "<td style='width: 100px'>" . $date . "</td>"; 
echo "</tr>"; 
echo "<td style='width: 800px'>" . '<img height="300" width="300" src="data:image/jpeg;base64,'.base64_encode($row["photo"]).'" >' . "</td>"; 
    } 
} 
echo "</table>"; 

mysqli_close($conn); 
?> 

因此,网站显示新闻栏,代码从数据库中获取新闻数据,如果有照片(如果新闻有照片去),然后它添加消息与桌上的照片。如果没有照片将消息添加到没有人的表格中。简单。目前,用于测试我有两个新闻文章都与照片,第一个完美的作品,则第二错误未定义的索引为mysql结果

Undefined index: photoid in 

对于线if ($row['photoid'] == NULL){。有一张照片。

+1

所以它不存在 – 2014-11-03 16:06:35

+0

你确定你有你'news'表中的列称为'photoid'你不要在您的查询选择该列? – vaso123 2014-11-03 16:08:21

+0

您的数据库中没有列名'photoid' – 2014-11-03 16:08:24

回答

0

在检查值之前,您需要检查是否设置了变量/键。试试这个:

 
if (isset($row['photoid']) && $row['photoid'] == NULL){ 
+0

这又造成了另一个问题,它永远永远只是同一个问题,无形中发布第一篇新闻文章xD。 – Murphy 2014-11-03 16:23:28

+0

在循环内查询中使用$ result和$ row的不同变量名称。像$ result2和$ row2之类的东西 – AlexL 2014-11-03 16:28:36

+0

你是一个天才,好吧,我学到了一些新东西。这解决了我所有的问题,谢谢。 – Murphy 2014-11-03 16:30:09