我有这部分代码:
resultrights = $conn->query("SELECT userid, page FROM pagerights WHERE userid = '" . $_SESSION['uid'] . "'");
while ($rowrightss = $resultrights->fetch_assoc()) {
echo $rowrightss['page']."<br>";
}
这行得通。它只是呼应数字 1个 2个 3个 5个 非常好。
现在,我想根据这些数字选择几个按钮。它们是按钮编号,在数据库中以其他方式声明。
稍后我有这个:
<?php
$i = 0;
$result = $conn->query("select pagenumber, pagetitle from pages WHERE pagenumber = '" . $_SESSION['assignedpage'] . "'");
echo "<html>";
echo "<body>";
echo '<table cellpadding="20">';
while ($row = $result->fetch_assoc()) {
unset($id, $name);
$id = $row['pagenumber'];
$name = $row['pagetitle'];
$i++;
//if this is first value in row, create new row
if ($i % 3 == 1) {
echo "<tr>";
}
echo '<td><button1 id="groteknop" class="btn-state state-start" onclick="Switchf();"><i id="knopje" class="icon icon-start"></i></button1></td>';
//if this is third value in row, end row
if ($i % 3 == 0) {
echo "</tr>";
}
}
//if the counter is not divisible by 3, we have an open row
$spacercells = 3 - ($i % 3);
if ($spacercells < 3) {
for ($j=1; $j<=$spacercells; $j++) {
echo "<td></td>";
}
echo "</tr>";
}
echo "</select>";
$conn->close();
?>
我想要实现的是,而不是 pagenumber = 分配页面的 session 值,我想从之前的查询结果中选择所有按钮。最终结果:我想显示按钮 1、2、3、5。这些数字来自第一个查询。因此,当这些数字发生变化时,它们确实发生了变化,因为它们是根据用户 ID 选择的,所以我想显示该查询的结果。
我怎样才能让它工作?
最佳答案
试试这个查询
select pagenumber, pagetitle from pages WHERE pagenumber in
(SELECT page FROM pagerights WHERE userid = '" . $_SESSION['uid'] . "')
关于PHP Mysql查询多项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38347794/