我正在尝试将来自网址的标题与来自mysql
行的标题进行匹配。
但是无法让它发挥作用。
这是我的链接:
http://www.domain.com/article/What-the-HECK
这是我的-HTacces
文件行:
RewriteRule ^article/(.*)$ article.php?id=$1
这是我从表格中选择的:
$id = $_GET['id'];
$title = str_replace('-', ' ', $id);
$result = mysql_query("SELECT * FROM articles WHERE status = '1' AND title = '$title' ORDER BY id DESC LIMIT 5") or die(mysql_error());
mysql
中的标题是" What-the-heck"如果我试图回应它,那么页面上的输出与mysql标题相同是显而易见的
答案 0 :(得分:0)
一些事情:
MultiViews
,因为您的PHP文件名与路径名$title
小写。<强> htaccess的:强>
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^article/(.+)$ article.php?id=$1 [L,QSA,NC]
在PHP代码中,在lower
列比较的MySQL查询中使用title
函数。
btw您必须使用PDO_MySQL
或MySQLi
否则此代码容易受到SQL注入攻击。
答案 1 :(得分:0)
它使用了URL中的id
http://www.domain.com/article-3-What-the-HECK
RewriteRule ^文章 - ([0-9] +) - (。*)$ article.php?id = $ 1&amp; title = $ 2
http://www-domain.com/article-3-What-the-HECK
现在它正在工作,我仍然在URL
中有标题希望它能为我的SEO表现提供更多关键词..