用第二个表的结果(PHP)填充SQL空数据库值
好的,所以我不确定我是否会用一种完全可怕的方式来处理这件事。 不过,我基本上是在尝试为我的室友创建一个电影数据库,以显示我们服务器上有哪些内容,并轻松地检查这些内容 我已经创建了一个数据库,该数据库使用来自我们plex服务器的xml提要自动更新,但是有一点整晚都在困扰着我 我正在尝试为最近添加的内容创建一个滑块,但当涉及到“摘要”时,电影会将摘要添加到我的“最近”表中,而电视剧则不会这样做(不确定plex的xml为什么会这样,但我正在尝试解决它)。电视剧集在“剧集”表中有摘要 我试图做的是循环浏览最近的表,如果“最近”->“描述”字段为空,则从“剧集”->“描述”中提取内容(按节目标题匹配) 到目前为止,我为这个循环编写的代码是:用第二个表的结果(PHP)填充SQL空数据库值,php,mysql,Php,Mysql,好的,所以我不确定我是否会用一种完全可怕的方式来处理这件事。 不过,我基本上是在尝试为我的室友创建一个电影数据库,以显示我们服务器上有哪些内容,并轻松地检查这些内容 我已经创建了一个数据库,该数据库使用来自我们plex服务器的xml提要自动更新,但是有一点整晚都在困扰着我 我正在尝试为最近添加的内容创建一个滑块,但当涉及到“摘要”时,电影会将摘要添加到我的“最近”表中,而电视剧则不会这样做(不确定plex的xml为什么会这样,但我正在尝试解决它)。电视剧集在“剧集”表中有摘要 我试图做的是循环浏
<?php
$con=mysqli_connect("localhost","","","plex");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$recent = mysqli_query($con,"SELECT * FROM recent LIMIT 0, 6");
$shows = mysqli_query($con,"SELECT * FROM shows");
while($row = mysqli_fetch_array($recent))
{
$art = $row['Art'];
$title = $row['Title'];
if (empty($row['Desc'])){
/* STUCK HERE*/
}
else {
$summary = $row['Desc'];
}
echo "<img src='$art.jpg' alt='$summary' title='$title' />";
}
mysqli_close($con);
?>
我会尽我所能澄清任何不清楚的事情(现在很晚了,你知道:p)如果你想通过一个查询来完成这项工作,你可以这样做:
$recent = mysqli_query($con,"SELECT r.Art, r.Title, if(r.Desc is null or r.Desc = '', e.Desc, r.Desc) as `Desc` FROM recent r inner join episodes e on r.Title = e.showtitle LIMIT 0, 6");
然后,您可以完全删除第二条select语句,而while循环中的PHP代码将是:
while($row = mysqli_fetch_array($recent))
{
$art = $row['Art'];
$title = $row['Title'];
$summary = $row['Desc'];
echo "<img src='$art.jpg' alt='$summary' title='$title' />";
}
while($row=mysqli\u fetch\u数组($recent))
{
$art=$row['art'];
$title=$row['title'];
$summary=$row['Desc'];
回声“;
}
表格中是否显示了剧集
或剧集
?您的查询显示为shows
,但您的描述却相反。这些表之间是否存在关系(是最近的。Title
与剧集。showttitle
相同)?哇,我完全忽略了表名的差异。(我会在一秒钟内更改,我想使用“剧集”)是的,最近。标题将与剧集相同。showtitle:)哇,看起来干净多了!我刚刚将我的代码编辑成了你的代码,但是我现在得到了一个可爱的::mysqli_fetch_array()期望参数1是mysqli_result,While循环线的布尔值(不确定为什么,根据我看到的情况)@J3d Design,布尔值是因为查询失败。我已更新查询,请重试。另外,建议直接在db中执行此查询,以验证表名和列名是否正确。似乎已修复该查询,但现在不会在$row的打印行上输出任何内容。谢谢你一直坚持我的观点:)你提到了最近的。Title
与剧集相同。showttitle
,两个表是否都有匹配的Title
和showttitle
?啊,我刚刚注意到它在最近的表上输出了一个“季节”号。我将从数据库更新程序中删除它,然后重试;)
while($row = mysqli_fetch_array($recent))
{
$art = $row['Art'];
$title = $row['Title'];
$summary = $row['Desc'];
echo "<img src='$art.jpg' alt='$summary' title='$title' />";
}