Перепишите строку запроса в URL с помощью .htaccess

Как переписать url моего сайта из «website.com/example.php?site=youtube» to «website.com/example/youtube» где сайт является переменной?
Должен ли я также изменить url-адрес в файле php?

2 ответа

  1. Вы можете использовать это в своем .htaccessфайле:

    RewriteEngine On
    RewriteRule ^example/([^/]*)$ /example.php?site=
    	

    You can use this in your .htaccess file:

    RewriteEngine On
    RewriteRule ^example/([^/]*)$ /example.php?site=$1 [L]
    

    That will leave you with the following URL: http://website.com/example/youtube. Make sure you clear your cache before you test this.

     $connection = mysqli_connect("localhost" , "root" , "" , "test");
    
     $query = "SELECT * FROM websites";
    
     $select_all_sites = mysqli_query($connection,$query);
    
     while ($row = mysqli_fetch_assoc($select_all_sites)) {
              $site_title = $row['site_title'];
    
    echo "<a class='item' href='site.php?website=$site_title'> $site_title</a>";
    

    On the other page which is called site.php i am using this code to get the variable from the sites.php page

      function myname(){
      if(isset($_GET['website'])){
      $variable = $_GET['website'];
      echo $variable;
        }
      }
    

    [L]

    Это оставит вас со следующим URL: http://website.com/example/youtube. Убедитесь, что вы очистили кэш перед тестированием.

  2.  $connection = mysqli_connect("localhost" , "root" , "" , "test");
    
     $query = "SELECT * FROM websites";
    
     $select_all_sites = mysqli_query($connection,$query);
    
     while ($row = mysqli_fetch_assoc($select_all_sites)) {
              $site_title = $row['site_title'];
    
    echo "<a class='item' href='site.php?website=$site_title'> $site_title</a>";
    

    На другой странице, которая называется сайт.php я использую этот код, чтобы получить переменную с сайтов.PHP-страница

      function myname(){
      if(isset($_GET['website'])){
      $variable = $_GET['website'];
      echo $variable;
        }
      }