gpt4 book ai didi

php - 为什么这个脚本不起作用? (奇偶)

转载 作者:行者123 更新时间:2023-11-29 14:34:51 25 4
gpt4 key购买 nike

我一直在编写一个脚本,根据用户是否被分配了偶数或奇数评论 ID 来显示用户的姓名。它从同一数据库中的两个不同表中调用数据。以下是表格信息:

表“comments”具有列 commentid、tutorialid、name、date:表“winners”具有列 pool、pool2、pool3、pool4、pool5、pool6、pool7。表“comments”具有通过用户输入更新的多行。表“获胜者”只有 1 行,其中的数字是每天随机生成的。

显示“结果 1”和“结果 2”的脚本第一部分工作正常。不起作用的部分是调用用户名的部分。我只想显示与 IE 显示的结果相关的用户名,如果选择结果 1,那么我只希望显示带有“commentid”的用户名。

<?php
$db = mysql_connect('localhost', 'username', 'pass') or die("Database error");
mysql_select_db('dbname', $db);

$query = "SELECT pool FROM winners";
$result = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result))
if ($row['pool'] % 2) {
echo "<h4>Result 1</h4>";
$names = get_names(1);
foreach($names as $name) {
echo $name . "<br/>";
}
} else {
echo "<h4>Result 2</h4>";
$names = get_names(0);
foreach($names as $name) {
echo $name . "<br/>";
}
}

function get_names($pool_result)
{
$name_array = array();

$query = "SELECT * FROM comments where mod('commentid',2) = $pool_result";
$result = mysql_query($query);

while ($row = mysql_fetch_array($result)) {
array_push($name_array, $row['name']);
}

return $name_array;
}
?>

有人能弄清楚为什么这不起作用吗?

最佳答案

带有 mod 的 SELECT 语句未引用该字段。应该是反引号而不是单引号。单引号表示字符串常量,这将产生常量结果集(mod('commentid',2) 的结果似乎为 0)。应该是这样的:

$query = "SELECT * FROM comments where mod(`commentid`,2) = $pool_result";

关于php - 为什么这个脚本不起作用? (奇偶),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9269548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com