我只是想通过特定行中的表格获取一些数据。
这是我的剧本。
<?php
$con=mysqli_connect("localhost","root","","astralms");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$type = htmlspecialchars(mysql_real_escape_string($_GET['type']));
$username = htmlspecialchars(mysql_real_escape_string($_GET['username']));
$result = mysqli_query($con,"SELECT * FROM accounts
WHERE name = '%s', $username);
while($row = mysqli_fetch_array($result))
{
if($type == "nxcash") {
echo $row['ACash'];
} else if($type == "votepoints") {
echo $row['vpoints'];
} else if ($type == "gmlevel") {
echo $row['gm'];
}
}
?>
然而, 我明白了:
(!)解析错误:语法错误,意外'nxcash'(T_STRING) 第17行的C:\ wamp \ www \ accountdata.php。
使用它时127.0.0.1/accountdata.php?username=tester&type=votepoints
感谢。
答案 0 :(得分:2)
您错过了"
:
WHERE name = '%s', $username);
// ^-- there
大多数IDE都能够选择语法错误。我建议花点时间熟悉一个好的。也有免费的。
答案 1 :(得分:0)
在WHERE name = '%s'
之后,您错过了SQL查询的结束双引号。
答案 2 :(得分:0)
第12/13行。
$result = mysqli_query($con,"SELECT * FROM accounts WHERE name = '%s', $username);
缺少引号语音标记。
答案 3 :(得分:0)
在SO上突出显示的语法突出显示了您的错误:
此:
$result = mysqli_query($con,"SELECT * FROM accounts WHERE name = '%s', $username);
应该是这样的:
$result = mysqli_query($con,"SELECT * FROM accounts WHERE name = '%s'", $username);
请注意关闭引号------------------------------------------- -------------------------这里----- ^