Php 我想问一下如何将mysqli代码更改为PDO?其他页面无法解决我的问题

Php 我想问一下如何将mysqli代码更改为PDO?其他页面无法解决我的问题,php,mysqli,pdo,Php,Mysqli,Pdo,我正在做一个搜索函数,我不知道如何将这个mysqli代码更改为PDO代码(也防止SQL注入)。希望你们能帮助我 <?php if(isset($_POST['submit'])) { $search = $_POST['search']; $query = "SELECT * FROM posts WHERE post_tags LIKE '%$search%'"; $search_query = mysqli_query($connectio

我正在做一个搜索函数,我不知道如何将这个mysqli代码更改为PDO代码(也防止SQL注入)。希望你们能帮助我

<?php
if(isset($_POST['submit'])) {
    $search = $_POST['search'];

    $query = "SELECT * FROM posts WHERE post_tags LIKE '%$search%'";
    $search_query = mysqli_query($connection, $query);

    if(!$search_query) {
        die("QUERY FAILED" . mysqli_error($connection));
    }

    $count = mysqli_num_rows($search_query);
}
?>

if(isset($\u POST['submit'])){
$search=$_POST['search'];
$search=“%$search%”;
$sql='SELECT*来自post_标记的帖子,如:search';
$stmt=$pdo->prepare($sql);
$stmt->bindParam(':search',$search);
$stmt->execute();
如果(!$stmt){
die(“查询失败”。$pdo->errorInfo());
}
$count=$stmt->rowCount();
如果($count==0){
回应“没有结果”;
}否则{
.....

这个代码看起来没有太大的错误。你认为这些问题是什么?它运行吗?你可能想考虑使用<代码> -FETCObjObjor()/Code >,这样你就得到了一个完整的行,每个调用而不是一个从“代码> > -FETCHOLLUN())的单列。
因此,您将所有行返回到一个数组中。参考:谢谢您的启发,我使用rowCount()解决了我的问题,谢谢!好的,仍然不确定您的问题是什么,但很高兴它解决了
<?php
$search = $_POST['search'];
$search = "%$search%";

$sql = 'SELECT * FROM posts WHERE post_tags LIKE :search';
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':search', $search);
$stmt->execute();

if(!$stmt) {
    die("QUERY FAILED" . $pdo->errorInfo());
}

$count = $stmt->fetchColumn();
?>
if(isset($_POST['submit'])) {
    
    $search = $_POST['search'];
    $search = "%$search%";

    $sql = 'SELECT * FROM posts WHERE post_tags LIKE :search';
    $stmt = $pdo->prepare($sql);
    $stmt->bindParam(':search', $search);
    $stmt->execute();

    if(!$stmt) {
        die("QUERY FAILED" . $pdo->errorInfo());
    }

   
    $count = $stmt->rowCount();

    if($count == 0) {
        echo "<h1> NO RESULT</h1>";
    } else {
        .....