我正在创建一个PHP搜索页面,用于搜索MySQL数据库并将结果返回到单独的jQuery模式中。
目标:当用户搜索一个术语时,通过单独的链接(这些链接被编写为打开jQuery模态(从数据库中显示ClassName
的结果,一旦单击链接,模态就会打开,显示所述数据库中与该ClassName
相关的其余信息。
工作原理:不同的ClassName
正确显示为单独的链接。
什么不起作用:无论单击哪个ClassName
链接,一旦打开模态,它都只显示与数据库中第一个ClassName
结果相关的信息。
如有任何帮助纠正此错误,我们将不胜感激。
我在数据库中用于结果的行只有:ClassName
、ClassInformation
和imagePath
。
PHP Select语句:
<?php
$raw_results = mysql_query(
"SELECT * FROM classes
WHERE (`ClassName` LIKE '%".$query."%') OR
(`ClassInformation` LIKE '%".$query."%')"
) or die(mysql_error());
?>
链接:
echo "<a href=".$results['ClassName']
. " data-reveal-id='myModal'><h2>"
. $results['ClassName']
. "</h2></a>";
模式:
echo "<div id='myModal' class='reveal-modal'
style='background-image: url(ResultBackground.png);
border: 1px solid black;'><h2>".$results['ClassName']."</h2>
<div id='image'>".$results['imagePath']."</div></br >
<h3>".$results['ClassInformation']."</h3>
<a class='close-reveal-modal'>×</a></div>";
我为代码格式不正确道歉我还不知道如何使用这个网站上的代码块。但是,感谢您提供的一切帮助。
两个月前,有人问了一个类似的问题,但他的代码编写方式让我完全反感,因为我是PHP新手,只知道我从在线教程中自学的混乱方式。我试图按照回答相关问题的人建议的方式格式化代码,但我一直在破坏我的代码。
$i=0;
while($row=mysql_fetch_array($raw_results)){
echo "<a href=".$results['ClassName']. " data-reveal-id='myModal_".$i."'><h2>".$results['ClassName']. "</h2></a>";
echo "<div id='myModal_".$i."' class='reveal-modal'>......restcode";
$i++;
}
您必须为每个链接使用唯一的id。在这里,您为每个链接都使用了相同的数据显示id="myModal",并且每个模态div都有相同的id"myModel"。所以,当您单击任何链接时,它都会检查id为"myModal"的第一个元素并显示它。为每个链接使用不同的数据显示id,并为相应的模态div 提供相同的id