0

经过几次研究放弃并在这里发帖,如果有人可以澄清我的事情,那就太好了,谢谢

当我使用http://site.com/file.php?url=2012/08/15/My-html-page一切正常时,ajax 将帖子发送到 file.php 并显示它,但是当我使用重写时通过 htaccess url http://site.com/2012/08/15/My-html-page.html发布表单什么都不做,它不起作用

链接:

原文:http ://site.com/file.php?url=2012/08/15/My-html-page

用 htaccess 重写:http ://site.com/2012/08/15/My-html-page.html

数据库入口:2012/08/14/My-first-post

要添加我添加的 html 代理页面

$url=$url.'.html'; 
$url= $_GET["url"];

我在file.php中的ajax

<SCRIPT language="JavaScript">

$(function() {
$(".comment_button").click(function()
{

var element = $(this);
var note = $("#note").val();
var dataString = 'note='+note;


if(note=='')
{
$('#flash').fadeIn("fast");
}
else
{
 $.ajax({
 type: "POST",
 url: "file_post.php",
 data: dataString,
 cache: false,
 success: function(html){
 $('body').load('/<? echo $url ?>.html');
 }
 });
 }
return false;
});
});
</script> 

我在file.php中的表格

 <form name="comment" method="post" action>

 <button class="comment_button" type="submit"><span>Отправить</span></button>
 <textarea name="note" id="note"></textarea>
 </form> 

我在 file_post.php 中的 php 文件

if(isSet($_POST['note']))  {

$note=$_POST['note'];
$note = html_entity_decode($note);
$date=date("Y-m-d");
$time=date("H:i:s");

$table = "insert into comment (note, date, time) values ('$note', '$date', '$time');";
mysql_query($table);


}

我的访问

 Options +FollowSymLinks
 Options -Indexes
 RewriteEngine On
 RewriteBase /

<Files inc/config.php>
deny from all
</Files>

RewriteRule ^([a-zA-Z0-9-/]+).html$ file.php?url=$1 [QSA,L]
RewriteRule ^([a-zA-Z0-9-/]+).html/$ file.php?url=$1 [QSA,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php

重写页面上的 $_SERVER['REQUEST_URI'] 给了我一个空输入,这正常吗?

4

2 回答 2

0

尝试将您的 2 条规则更改为:

RewriteRule ^([a-zA-Z0-9-/]+).html$ file.php?url=$1.html [QSA,L]
RewriteRule ^([a-zA-Z0-9-/]+).html/$ file.php?url=$1.html [QSA,L]

正在被剥离,.html因此您的 file.php 脚本被称为:

http://site.com/file.php?url=2012/08/15/My-html-page

代替

http://site.com/file.php?url=2012/08/15/My-html-page.html
于 2012-08-15T17:54:40.213 回答
0

我不知道错误是什么,带有斜杠或数字和 htaccess 但我找到了解决方案

RewriteRule ^read/([A-Za-z0-9\-_]+]*)$ file.php?url=$1 [L] 

没有 html 或 php

于 2012-08-15T20:41:41.283 回答