【发布时间】:2016-03-18 17:55:51
【问题描述】:
我明白了
“未定义变量:行”为以下代码在“return ($row);”处
$ROW 不是在 $ROW[] = Array(...) 定义的吗?
<?php
function fetchImageState(){
$state = $_GET['state'];
global $mysqli,$db_table_prefix;
$stmt = $mysqli->prepare("SELECT athletedetails.UserID,
athletedetails.State_Code,
filesrepository.user_id,
filesrepository.new_file_name,
filesrepository.file_ID
FROM athletedetails INNER JOIN filesrepository ON athletedetails.UserID = filesrepository.user_id
WHERE athletedetails.State_Code = '$state'
");
$stmt->execute();
$stmt->bind_result($UserID, $statecode, $user, $file_id, $new_file_name);
while ($stmt->fetch()){
$row[] = array(
'userID' => $UserID,
'state' => $statecode,
'user' => $user,
'fileid' => $file_id,
'newfilename' => $new_file_name);
}
$stmt->close();
return ($row);
}
?>
【问题讨论】:
-
不应该是
while ($row = $stmt->fetch()){还是直接用fetch_all?您也可以使用此代码进行 SQL 注入。 -
@chris85 感谢您的输入,此代码用于课程,我们被告知不要太担心安全性。完全意识到“获取”代码不是好的做法。但再次感谢!