PHP mysql:2个类似的查询只回显第2个查询的结果
第二次查询的结果覆盖第一次查询的结果。 我以前从未遇到过类似的问题 mysql表:PHP mysql:2个类似的查询只回显第2个查询的结果,php,mysql,Php,Mysql,第二次查询的结果覆盖第一次查询的结果。 我以前从未遇到过类似的问题 mysql表: updateid picture movie 14 1 1 22 0 1 33 1 0 <div id="imagecheck"> <?php $image_check= query("SELECT picture FROM list WHERE updateid = '
updateid picture movie
14 1 1
22 0 1
33 1 0
<div id="imagecheck">
<?php
$image_check= query("SELECT picture FROM list WHERE updateid = '$updateid' ");
foreach ($row as $image_check);
if (!($image_check))
{
?>
<div class="result" id="camera<?php echo $updateid ?>">FOO</div>
<?php
}
else
{
?>
<div class="result" id="camera<?php echo $updateid ?>">BAR</div>
<?php
}
?>
</div>
<div id="moviecheck">
<?php
$movie_check = query("SELECT movie FROM list WHERE updateid = '$updateid' ");
foreach ($row as $movie_check);
if (!($movie_check))
{
?>
<div class="result1" id="movie<?php echo $updateid ?>">FOO</div>
<?php
}
else
{
?>
<div class="result1" id="movie<?php echo $updateid ?>">BAR</div>
<?php
}
?>
php文件:
updateid picture movie
14 1 1
22 0 1
33 1 0
<div id="imagecheck">
<?php
$image_check= query("SELECT picture FROM list WHERE updateid = '$updateid' ");
foreach ($row as $image_check);
if (!($image_check))
{
?>
<div class="result" id="camera<?php echo $updateid ?>">FOO</div>
<?php
}
else
{
?>
<div class="result" id="camera<?php echo $updateid ?>">BAR</div>
<?php
}
?>
</div>
<div id="moviecheck">
<?php
$movie_check = query("SELECT movie FROM list WHERE updateid = '$updateid' ");
foreach ($row as $movie_check);
if (!($movie_check))
{
?>
<div class="result1" id="movie<?php echo $updateid ?>">FOO</div>
<?php
}
else
{
?>
<div class="result1" id="movie<?php echo $updateid ?>">BAR</div>
<?php
}
?>
可能是打字错误。您正在使用变量:
foreach ($row as $$movie_check);
^^--- note the doubled $
e、 g
一般来说,永远不要使用变量。它们使代码完全无法维护,几乎无法调试。可能是打字错误。您正在使用变量:
foreach ($row as $$movie_check);
^^--- note the doubled $
e、 g
一般来说,永远不要使用变量。它们使代码完全无法维护,几乎无法调试。感谢您的关注。正如你所说,当我复制粘贴代码时,这是一个拼写错误,所以,只需修复它。代码也非常混乱。在foreach中使用$row,但从不显示它的定义方式。也不知道这个query()
调用在做什么。但正如现在所写的,foreach()会在foreach启动后立即覆盖query()结果。如果我删除foreach,那么查询似乎根本不起作用:它们为每个项目输出条形图(而不是我表中的所有行都是1。有些行是0)。那么,$row
在哪里定义?除非它被query()
调用以某种方式修改,否则您所做的只是在两个位置对相同的数据进行循环。感谢您捕捉到这一点。正如你所说,当我复制粘贴代码时,这是一个拼写错误,所以,只需修复它。代码也非常混乱。在foreach中使用$row,但从不显示它的定义方式。也不知道这个query()
调用在做什么。但正如现在所写的,foreach()会在foreach启动后立即覆盖query()结果。如果我删除foreach,那么查询似乎根本不起作用:它们为每个项目输出条形图(而不是我表中的所有行都是1。有些行是0)。那么,$row
在哪里定义?除非它被query()
调用以某种方式修改,否则您所做的只是在两个位置对相同的数据执行循环。请尝试mysqli获取数组,然后将输出放入表中。可以在W3学校找到一个样本。因此,至少您知道如何提取行。因为您所做的更多的是破坏html结构,所以在使用foreachtry之前,先使用一个更简单的结构,而mysqli获取数组,然后将输出放入表中。可以在W3学校找到一个样本。因此,至少您知道如何提取行。因为您所做的更多的是破坏html结构,所以在使用foreach之前,先使用一个更简单的结构