从$ _POST获取$userid
时遇到问题。我以前做了很多次,所以我不确定我突然做错了什么。
<?php
//confirm user function
function confirmUsers() {
//make connection global
global $con;
//set user variables
$userquery = mysqli_query($con, "SELECT * FROM users WHERE userlevel = 0");
//echo list
echo '<center><form name="userConfirm" action="functions/user_confirm.php" method="post">';
echo '<select name="confirmUser">';
while ($row = mysqli_fetch_array($userquery)) {
echo "<option value='" . $row['userid'] ."'>" . $row['username'] ."</option>";
//in viewing element, the userid is displaying properly
}
echo '<input type="submit" value="Confirm User">';
echo '</select>';
echo '</form></center>';
}
?>
<?php
//include db connect
include ("db_con.php");
//set variable names
$userid = $_POST['userid'];
//start session
session_start();
echo $userid;
?>
正如您所看到的,我只是试图回应从表单传递的变量。它不起作用,我完全困惑为什么,任何想法?
<?php
$con=mysqli_connect("localhost","user","pw","db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
答案 0 :(得分:5)
您没有名为userid的表单字段,也许您的意思是confirmUser字段:
$userid = $_POST['confirmUser'];
答案 1 :(得分:0)
您没有将userid var传递给user_confirm.php,请尝试将您的select重命名为userid
答案 2 :(得分:-1)
编码看起来对我来说应该有用。 我不确定这是否有帮助,但尝试加载session_start();第一。 接下来的事情是做一个print_r($ _ POST)并查看显示的内容。 还可以查看已完成的html的来源,并查看它是如何打印出来的。 我也喜欢用 echo&lt;&lt;
END; 有了这个你就可以输入html加上没有&#39;的字符串。或&#34;除非html需要它。
我自己错过了confirmUser .. =(