这是我在第一名的第一个PHP。如果我有什么问题,请帮我代码。因为我刚开始学习。我尝试了很多教程,但我无法理解我做错了什么。
<?php
include "db_config.php";
$query = mysql_query("SELECT * FROM places WHERE place_id ='".mysql_real_escape_string($_REQUEST[place_id])."'");
while($e=mysql_fetch_assoc($query))
$output[]=$e;
echo $row['name'];
mysql_close();
?>
这是对的吗? 我不知道它是如何工作的。
$stmt = $db->prepare("SELECT * FROM table WHERE $_REQUEST[place_id]");
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
答案 0 :(得分:4)
你在这一行上有一个错字:
while($e=mysql_fetch_assoc($q))
$q
需要$query
。我在代码中看不到变量$q
。这是php代码中的一个常见问题,就好像你引入了一个像$q
这样的名字,php足够“好”,可以为你创建变量并将其初始化为null
,而不是明智地给你一个错误。 / p>
答案 1 :(得分:2)
你需要使用mysql_query的结果来保护mysql_fetch_assoc(),这里是$ query。
<?php
include "db_config.php";
$query = mysql_query("SELECT * FROM places WHERE place_id='".mysql_real_escape_string($_POST[place_id])."'");
while($e=mysql_fetch_assoc($query))
$output[]=$e;
print(json_encode($output));
mysql_close();
?>
此外,你需要使用一些pdo或mysqli,因为不推荐使用mysql_:http://php.net/manual/en/function.mysql-query.php