【发布时间】:2014-02-18 04:27:42
【问题描述】:
我有一个简单的 MySQL 数据库,其中包含 3 个字段(ref_id、slug、content)。我用以下数据填充了它(1,关于,示例内容;2,投资组合,示例内容;3,联系人,示例内容)。
我使用以下代码创建了一个基本的 PHP 页面:
<?php
require('db.php');
$ref_id = $_GET['ref_id'];
$query = "SELECT * FROM myWebsite WHERE ref_id='$ref_id'";
$page_query = mysql_query($query);
mysql_close();
$slug = mysql_result($page_query, 0, "slug");
$content = mysql_result($page_query, 0, "content");
echo "<h1>$slug</h1>
<p>$content</p>";
?>
当您访问 mydomainname.com/myWebsite.php?ref_id=2 时,您会看到投资组合页面等。
到这里为止一切正常。
我想使用 mydomainname.com/portfolio,而不是使用 mydomainname.com/myWebsite.php?ref_id=2
根据我找到的教程和我所知道的,我创建了一个 .htaccess 文件并添加了以下代码:
<IfModule mod_rewrite.c>
RewriteEngine on
# Change following path
RewriteBase /$slug/
RewriteRule ^([A-Za-z0-9-]+)/?$ myWebsite.php?ref_id=$1 [L]
</IfModule>
这不起作用 --- 当我转到 mydomainname.com/portfolio 时,我得到“在此服务器上找不到请求的 URL /$slug/myWebsite.php。”我在这里错过了什么?
【问题讨论】:
-
旁注:
require('db.php');出现两次。 -
@Fred-ii- 已修复。谢谢。
-
可爱的SQL injection attack 漏洞。享受你的服务器 pwn3d
标签: php mysql .htaccess permalinks