【问题标题】:.htaccess and php send get form.htaccess 和 php 发送获取表单
【发布时间】:2018-08-05 11:59:58
【问题描述】:

我想删除我的 .php 文件扩展名并添加斜杠?
这是我的网址http://localhost/search.php?query=movie
我想要这样http://localhost/search?query=movie
这是我的代码
htaccess

RewriteEngine On
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^search/(.*)$ ./search.php?query=$1
RewriteRule ^search/([a-zA-Z0-9]+)/$ search.php?query=$1



php

<?php
    require("classes/database.php");
    if (isset($_GET['query'])) {
      $query = trim($_GET['query']);
      if (strlen($query) >= 3) {
        try{
        $sql = "SELECT * FROM post WHERE title LIKE :query";
        $stmt = $conn->prepare($sql);
        $stmt->bindValue(':query','%'.$query.'%');
        $stmt->execute();
        while ($r=$stmt->fetch(PDO::FETCH_ASSOC)) {
          $name = DB::query('SELECT username FROM users WHERE id=:user_id', array(':user_id' => $r['user_id']))[0]['username'];
          if($r !== ''){
            ?>
            <a target="_blank" href="view.php?title=<?php echo $r['title']; ?>&id=<?php echo $r['id']; ?>&sidu=<?php echo $r['user_id']; ?>"><?php echo $r['title']; ?></a><br>
            <?php
          }else {
            echo "Not Found!";
          }
      }
      }catch(PDOException $e){
        echo $sql . "<br>" . $e->getMessage();
    }
      }
    }



    $conn = null;
 ?>

这是我的html

<form class="mx-2 my-auto d-inline w-100" action="search" method="get">
        <div class="input-group">
            <input type="text" name="query" class="form-control border border-right-0" placeholder="Search...">
            <span class="input-group-append">
            <button class="btn btn-outline-secondary border border-left-0" type="submit">
                <i class="fa fa-search"></i>
            </button>
          </span>
        </div>
    </form>

谢谢。任何帮助将不胜感激

P.S 对不起我的英语不好

【问题讨论】:

    标签: php forms apache .htaccess get


    【解决方案1】:

    在你的 .htaccess 文件中试试这个:-

    RewriteEngine on 
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}\.php -f
    RewriteRule ^(.*)$ $1.php [NC,L]
    

    【讨论】:

    • 您也可以使用 QSA 标志。
    猜你喜欢
    • 2021-07-21
    • 2018-01-24
    • 2013-12-10
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 2013-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多