0

我正在尝试创建一个 SEO 友好的网站。目前页面可以工作,因为 id 显示在 URL 中,所以我想product.php?id=4替换ID为在我的数据库中查找产品详细信息,当它查找时,它认为它是一个单词,所以没有找到产品。所以我认为我需要的是一个添加连字符的变量,以及一个将这个连字符改回空格的变量。如我错了请纠正我product_nameproduct.php?product_name=fence%20panelproduct.php?product_name=fence-panel

if(isset($_GET['id'])){ 
$id = $_GET['id']; 
//Get the product if exists 
//if no product then give a message 
$sql = mysqli_query($myNewConnection, "SELECT * FROM products WHERE id='$id' LIMIT 1"); 
$productCount = mysqli_num_rows($sql); 
if ($productCount > 0) { 
    //get product details 
    while($row = mysqli_fetch_array($sql)){ 
        $product_name = $row["product_name"]; 
        $price = $row["price"]; 
        $details = $row["details"]; 
        $category = $row["category"]; 
        $date_added = strftime("%b %d, %Y", strtotime($row["date_added"])); 
        $_SESSION['product_price_array'] = $price; 
    } 
} else{ 
    echo "No Product in the system"; 
    exit(); 
} 
4

1 回答 1

2

使用rawurlencode()rawurldecode()。有关示例,请参阅PHP 文档。它不会添加连字符,但它会做你想要的。要添加连字符,您可以在编码后尝试执行以下操作:$str = str_replace('-', '%2D', $str);. 你可能应该再做一次,并在解码前交换前两个参数!

于 2013-05-19T09:16:59.937 回答