[英]Sometimes no query result with mysqli
我已經編寫了此函數以從我的MySQL數據庫讀取。 在大多數情況下,這是可行的,但是如果出現變音符號或類似“”這樣的字符的行,則返回“ 0結果”。
function leseAntwort($FrageID, $AntwortID){
$sql = "SELECT antwort_text FROM antwort WHERE frage_id=$FrageID AND id=$AntwortID";
$result = connect()->query($sql);
if ($result->num_rows > 0) {
$antwort = $result->fetch_row();
connect()->close();
return $antwort[0];
} else {
connect()->close();
return "0 results";
}
}
[更新]
我試過了,但是結果之間沒有區別。
function leseAntwort($FrageID, $AntwortID){
$frage=$FrageID;
$antwort=$AntwortID;
global $mysqli;
if ($stmt = $mysqli->prepare("SELECT antwort_text FROM antwort WHERE frage_id=? AND id=?")){
$stmt->bind_param("ii", $frage, $antwort);
$stmt->execute();
$stmt->bind_result($d);
$stmt->fetch();
return $d;
$stmt->close();
$mysqli->close();
} else {
echo "Error";
}
}
您的SQL語句中有SQL注入。 PLZ使用Prepared Statements http://php.net/manual/de/mysqli.quickstart.prepared-statements.php之后,您可以在Params中使用utf-8 Chars。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.