【发布时间】:2012-10-03 10:13:15
【问题描述】:
这就是我所拥有的 - 一个 javascript onclick 事件,它将从我的 MySQL 数据库数据中解析 json 并在有人点击座位时显示它。
var jsonData = <?php echo json_encode($array); ?>;
function displayInfoForDiv(i){
document.getElementById('fname').innerHTML = jsonData[i].first_name;
document.getElementById('lname').innerHTML = jsonData[i].last_name;
}
输出
<?php while ($row = mysql_fetch_array($sql)){ ?>
<p><span id="fname"><?php echo $row['first_name']; ?></span></p>
<p><span id="lname"><?php echo $row['last_name']; ?></span></p>
<?php } ?>
当您尝试查找名称时,PHP 用于我的搜索框 - 我正在使用它
$sql = mysql_query("select * from people where first_name like '%$term%' OR last_name LIKE '%$term2%'");
所以我遇到的问题是,当我搜索马特时,会显示一个以上的结果。说:
马特
哈塞尔贝克
马特
呸
但是如果我使用onclick事件点击joe的座位,会显示如下:
乔
褶边
马特
呸
所以问题是当我触发 onClick 事件时搜索结果会保留,但第一个会改变。
我的问题是,当我点击一个座位来清除搜索结果并只显示一个但当我进行搜索以显示相似名称时,有没有办法。
我使用 PHP 和 JS 调用相同的数据,因为 JS 只有一个范围的楼层,而 php 正在从数据库中获取所有内容。
希望这很清楚,感谢您的任何意见。
【问题讨论】:
-
请不要使用
mysql_*函数来编写新代码。它们不再维护,社区已经开始deprecation process。看到 red box 了吗?相反,您应该了解prepared statements 并使用PDO 或MySQLi。如果你不能决定哪一个,this article 会帮助你。如果你选择 PDO,here is good tutorial。另见Why shouldn't I usemysql_*functions? -
如果你搜索
O'Neil会发生什么?我猜你忘了escape your SQL properly。 -
感谢您的更正 - 现在修复它们。
标签: php javascript mysql forms