猿问

类别和子类别 php

你好,我正在尝试解决一个问题,作为一个初学者,我仍在学习,php直到我认为我可以迁移到一个框架,我想做的是:


我在 php 中有一个这样的路由器:


<?php 


     if(isset($_GET['contact'])){

         include('conctact.php');

     }elseif(isset($_GET['name_product'])){

         include('product.php');

     }else{

         include('home.php');

     }


 ?>

菜单链接如下:


 <?php 

    $select = mysqli_query($conn, "SELECT * FROM products");

    while($row = mysqli_fetch_assoc($select)){?>

        <div><a href="shoes/<?=$row['url_slug'];?>"><?=$row['name']?> - <?=$row['url_slug'];?></a></div>

 <?php } ?>

(鞋子是我想稍后添加动态类别的类别,点击后我想加载页面product.php,我不想在url上有id,所以我用url slug做了)


有的是.htaccess


RewriteRule ^([a-zA-Z0-9-])/([a-zA-Z0-9-])$   index.php?name_category=$name_product=$1 [L]

我的网址希望看起来像这样www.example/shoes/product-name


看起来product.php像这样:


<?php 


   $name_product = mysqli_real_escape_string($conn, $_GET['name_product']);


   $sql=mysqli_query($conn,"SELECT * FROM products WHERE url_slug='$name_product '");


   $row=mysqli_fetch_array($sql);


 ?>

我的表 mysql 看起来像这样:


Product table

|id|name|url_slug|category|


Category table

|id|name|

.htaccess当单击链接包含页面product.php并显示从数据库获取产品的详细信息时,我不知道如何编写。


喵喔喔
浏览 107回答 1
1回答

一只甜甜圈

RewriteRule&nbsp;^/([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)$&nbsp;&nbsp;&nbsp;/index.php?name_category=$1&name_product=$2&nbsp;[L]正则表达式中的每组括号都会有一个自己的$变量。这将匹配这个确切的 url,www.example/shoes/product-name如下所示:$1&nbsp;=&nbsp;shoes$2=product-name所以如果你的url_slug表中是product-name你可以用它来查询你的sqlSELECT * FROM products WHERE url_slug='$name_product'
随时随地看视频慕课网APP
我要回答