我希望使用 session 用户 id = PhysioReference(表中的一个字段)的条件,但它似乎不起作用?什么是正确的方法或有更好的方法?
它在表格中显示信息,但仅在登录人员已分配该信息的地方
$sql="SELECT * FROM IA WHERE IASubmitted= 'no' AND PhysioReference = $_SESSION['SESS_MEMBER_ID']";
最佳答案
您想要的内容的文字表示(坏主意)将使用 Complex (curly) in string variable syntax :
$sql="SELECT * FROM IA
WHERE IASubmitted= 'no' AND PhysioReference = ${_SESSION['SESS_MEMBER_ID']}";
这很容易出现 SQL Injection ,而是使用 prepared statement :
$sql="SELECT * FROM IA
WHERE IASubmitted= 'no' AND PhysioReference = ?";
/* Prepared statement, stage 1: prepare */
if (!($stmt = $mysqli->prepare("INSERT INTO test(id) VALUES (?)"))) {
echo "Prepare failed: (" . $mysqli->errno . ") " . $mysqli->error;
}
/* Prepared statement, stage 2: bind and execute */
if (!$stmt->bind_param("i", $_SESSION['SESS_MEMBER_ID'] )) {
echo "Binding parameters failed: (" . $stmt->errno . ") " . $stmt->error;
}
if (!$stmt->execute()) {
echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
}
关于php - 标准使用 session ID 显示相关信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22756996/