Php 如何在数据库中搜索并显示它?
我尝试了这段代码来显示商品名称、价格和数据库中的照片,以便在搜索栏中搜索商品名称Php 如何在数据库中搜索并显示它?,php,Php,我尝试了这段代码来显示商品名称、价格和数据库中的照片,以便在搜索栏中搜索商品名称 <?php try { require('connection.php'); $sql2="SELECT * FROM items where item.item_name like '".$txt1."%' $result2=$db->query($sql2);
<?php
try
{
require('connection.php');
$sql2="SELECT * FROM items
where item.item_name like '".$txt1."%'
$result2=$db->query($sql2);
if ($result2->rowCount()!=0) {
foreach ($result2 as $r2) { ?>
<a href="images/<?php echo $r2['item_photo'] ?>" class="fh5co-card-item image-popup">
<figure>
<div class="overlay"><i class="ti-plus"></i></div>
<img src="images/<?php echo $r2['item_photo']?>" alt="Image" class="img-responsive">
</figure>
<div>
<?php echo "<p><span class='price kk'>" ; ?>
<p style="font-family:'georgia';text-align:center;font-size:20px;color:black;"><?php echo ($r2['item_name']); ?></span></p>
<h2 style="font-family:'georgia';text-align:center;font-size:18px;color:grey;"><?php echo ("BD ".$r2['item_price']); ?></h2>
</div>
<?php }
} ?>
“class=“fh5co卡项目图像弹出窗口”>
“alt=”Image“class=”img responsive“>
问题是sql,where后面还有一个额外的名称
$sql2="SELECT * FROM items
where item.item_name like '".$txt1."%' ;
应该只有item\u名称,而不是item.item\u名称。将此更改为:
$sql2="SELECT * FROM items
where item_name like '".$txt1."%';
您的代码可能会被sql注入攻击。请谨慎使用此代码进行生产。是否有任何错误?这对你有什么回报?请先修一门php课程。有很多教程。代码人有什么问题?请与我们分享,以便我们提供一些帮助。您的代码看起来非常危险,可以通过sql注入加以利用