我想创建一个搜索页面,我想在“div”中显示我从数据库中搜索到的数据?

Posted

技术标签:

【中文标题】我想创建一个搜索页面,我想在“div”中显示我从数据库中搜索到的数据?【英文标题】:I want to make search page where I want to display my searched data from database in a "div"? 【发布时间】:2018-04-10 08:27:48 【问题描述】:

我想创建一个搜索页面(php),我想在“div”中显示我从数据库中搜索到的数据?我与数据库建立了连接并在一个 phppage 中搜索数据并在另一个 phppage 中创建了一个 div 标签。如何将一个 php 页面的搜索数据显示在另一个 php 页面的“div”中

搜索.php:

<?php 
include 'Searchdata.php';
include 'connect.php';
if(isset($_POST['submit']))
   $searchkey= $_POST['search'];    
   $searchkey=preg_replace("#[^0-9a-z]#i", "", $searchkey); 
   $query = mysqli_query($conn, "SELECT * FROM newentry WHERE Date LIKE '%$searchkey%'")or die("Could not search!");
   $count = mysqli_num_rows($query); 
   if(!($count == 0))     
      while($row=mysqli_fetch_array($query))
         $Date=$row['Date'];
         $Entry=$row['Entry'];
         echo'<div>'.$Date.'<br>'.$Entry.'</div>';
       
     else echo "There was no search result!"; 
?>

搜索数据.php:

<div>
<form action="Search.php" method="post">  
   <input type="text" name="search" placeholder="Search"> 
   <input type="submit" value="Search" />
</form>

【问题讨论】:

你想在哪个页面显示结果? 在searchdata.php中我保留了“div”我想在那个“div”中显示结果 @yoyo 你的问题不清楚。搜索表单的 url 是什么,您是否想在相同的 url 上显示结果?是否要在结果页面中包含搜索表单? 另外,您的代码容易受到 sql 注入的攻击。 我想在 searchdata.php 中显示结果,我给了一个“div”来显示结果...在 searchdata.php 我给了“div”....拿了结果,我想在另一个 php 页面中显示,即在 searchdata.php 【参考方案1】:

只需创建一个变量来存储本例中的 $data 的结果。将包含的 searchdata.php 移动到代码的底部,以便它可以重新调整 $data。 然后在你的 html 页面上回显它。

html页面

<div>
<form action="Searchdata.php" method="post">  
<input type="text" name="search" placeholder="Search"> 
<input type="submit" value="Search">
</form>
<div><?php echo $data ?></div>
</div>

PHP 代码。

<?php
include 'connect.php';
$data = '';
if(isset($_POST['submit']))
$searchkey= $_POST['search'];   
$searchkey=preg_replace("#[^0-9a-z]#i", "", $searchkey); 
$query = mysqli_query($conn, "SELECT * FROM newentry WHERE Date LIKE '%$searchkey%'")or die("Could not search!");
$count = mysqli_num_rows($query); 
if(!($count == 0))     
while($row=mysqli_fetch_array($query)) 
$Date=$row['Date'];
$Entry=$row['Entry'];
$data = '<div>'.$Date.'<br>'.$Entry.'</div>';

 else 
$data = "There was no search result!";
include 'Search.php';
?>

【讨论】:

这在 search.php 中显示了结果,但问题要求在 searchdata.php 中显示结果 是的......谢谢......现在它在“div”中......但它在 searchdata.php 中显示错误 注意:未定义的变量:数据 将您的包含移动到 php 文件的底部。 php 必须先运行,然后才是 include。 否则包含的页面将不知道 $data 是。 我将包含 searchdata.php 文件保留在 search.php 的底部...但它在 searchdata.php 中显示数据未定义的错误@Jonny

以上是关于我想创建一个搜索页面,我想在“div”中显示我从数据库中搜索到的数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用JS随机更改HTML内容

使用页面项目值在 oracle apex 中搜索经典报告

Codeigniter - 如何内连接?

如何在input元素下显示搜索结果列表?

用于 JQuery 登录的 HTML 表单或 div?

如何将 PHP 输出插入 html div 替换临时图形