我为我的网页应用构建简单的WebService,其中只包含两个php文件 connecttodatabase.php 包含mysql连接的代码, index.php 包含我的webService的代码但是我得到了sql错误:
您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在第3行“ desc,cat,price FROM itmes ”附近使用正确的语法
connecttodatabase.php
<?php
$requesturi = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$pos = strpos($requesturi, "localhost:99/self/index.php");
$hostname = "localhost";
$database = "self";
$username = "root";
$password = "";
$self = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);
的index.php
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
//get data
require_once('connecttodatabase.php');
mysql_select_db($database, $self);
//build query
$query =
"SELECT
name,
desc,
cat,
price
FROM itmes";
$rsPackages = mysql_query($query, $self) or
die(mysql_error());
$arRows = array();
while ($row_rsPackages = mysql_fetch_assoc($rsPackages)) {
array_push($arRows, $row_rsPackages);
}
header('Content-type: application/json');
echo json_encode($arRows);
?>
</body>
</html>
答案 0 :(得分:0)
这是因为你在选择中使用了命令DESC,它会抛出异常。使用特殊符号来防止这些问题:
`something`
所以你的代码会有这样的形式:
$query =
"SELECT
`name`,
`desc`,
`cat`,
`price`
FROM `itmes`";
它应该有效。