【发布时间】:2010-04-23 02:09:28
【问题描述】:
如果你看一下之前的问题
mod rewrite, title slugs and htaccess
我正在使用上校 Shrapnel 提出的解决方案 - 但是当我在实际文件中为 $_GET 分配值而不是来自请求时,代码不起作用。它默认远离文件,就好像没有设置 $_GET 变量一样
我想出的代码是-
if(!empty($_GET['cat'])){
$_GET['target'] = "category";
if(isset($_GET['page'])){
$_GET['pageID'] = $_GET['page'];
}
$URL_query = "SELECT category_id FROM cats WHERE slug = '".$_GET['cat']."';";
$URL_result = mysql_query($URL_query);
$URL_array = mysql_fetch_array($URL_result);
$_GET['category_id'] = $URL_array['category_id'];
}elseif($_GET['product']){
$_GET['target'] = "product";
$URL_query = "SELECT product_id FROM products WHERE slug = '".$_GET['product']."';";
$URL_result = mysql_query($URL_query);
$URL_array = mysql_fetch_array($URL_result);
print_r($URL_array);
$_GET['product_id'] = $URL_array['product_id'];
我试图表示的原始变量字符串是
/cart.php?Target=product&product_id=16142&category_id=249
我正在尝试使用代码构建查询字符串变量,包括 cart.php,这样我就可以使用更清晰的 URL
所以我有 product/product-title-with-clean-url/ 去 slug.php?product=slug
然后 slug 在 db 中搜索具有匹配 slug 的记录并返回 product_id,如上面的代码所示。然后构建查询字符串并包含 cart.php
【问题讨论】:
-
你使用什么 .htaccess 代码来路由 slug?
-
我还没到那一步.. 仍在 slug.php 上使用 $_GET 变量进行测试。我被这个难住了
-
GET 分配在哪里?我在包含的代码中没有看到它。此外,使用 print_r's 和 die's 执行基本调试,以查看预期值是否与实际值匹配。
-
$_GET['product_id'] = $URL_array['product_id'];是为了得到任务......?我将在问题中添加更多信息
-
看起来你发现不重写你的 slug 是行不通的