如何 ajax 发布到重写的 url
How to ajax post to a re-written url?
目前我正在通过post向PHP文件提交表单,唯一的问题是我无法提交到该php文件,因为ajax出了问题。我的问题是,如果后端重写了 URL,我可以提交到其他 URL 吗?
当前页面网址: - 实际:http://site.com/topic.php?id=1 - 改写:http://site.com/topic/1
想要的页面网址: - 实际:http://site.com/comment.php
如何发送到评论.php文件?我认为javascript假设我正在尝试做 site.com/topic/comment.php
.HTML:
<form id="comment_on_topic" onsubmit="return sendComment();">
<textarea id="topicreply" name="topicreply">Initial value.</textarea>
<input type="submit" name="submit" value="submit" />
</form>
Javascript:
function sendComment(){
var $form = $('#comment_on_topic');
var $inputs = $form.find("input, select, button, textarea");
var serializedData = $form.serialize();
$inputs.prop("disabled", true);
/* GET FORM INPUTS & SERIALIZE */
var http = new XMLHttpRequest();
http.open("POST", '/comment.php');
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.send(serializedData);
/* AJAX REQUEST TO POST TO FILE */
return false;
}
PHP://根本没有被执行。(评论.php)
<?php if($_SERVER['REQUEST_METHOD'] == "POST") : ?>
<?php
require_once 'protected/connect.inc.php';
require_once 'protected/functions.inc.php';
$comment = sanitize($_POST['topicreply']);
sendComment( 1, 1, "Topic Reply", $comment );
?>
<?php endif; ?>
是的,JavaScript正在执行。序列化数据看起来不错("id=value&otherid=value")
要了解会发生什么,我建议:- 查看 Apache 日志(访问和错误),以查看您的 URL 是否被重写以及如何重写。- 要运行,请从浏览器或Chrome插件Postman等工具手动查询(然后您可以看到PHP错误)。
这应该有助于发现问题!
我已经解决了这个问题。我不得不使用 http.open( "POST", '../评论.php' );JavaScript/html/CSS 不会在实际的文件路径(如 PHP)上选取。(只是将来对其他人的帮助)
相关文章:
- 阅读重写URL-javascript
- css中的url用angular重写
- 可以在页面加载后使用javascript/Jquery重写/修改URL
- URL重写Node js-动态URL
- 通过特定的Web.Config目录提供URL重写
- 需要帮助使用JavaScript/Jquery重写url
- 为什么 Angular 将 URL 片段 #foo 重写为 #/foo 以及如何避免这种情况
- 无需 htaccess 即可重写 URL(无多页)
- 如何重写 URL,使其看起来像用户不在某个地方
- 使用 JQUERY 和正则表达式重写 URL
- 更改位置时重写URL
- PHP/Javascript,重写URL中的真实文件名
- 如何为JavaScript重写URL结构
- 注入的Javascript没有在UiWebView中重写URL
- 在Firefox插件中选择性地重写URL
- 显示自定义ASP.. NET错误页,而不重写URL
- 如何重写url以删除问号
- 在AngularJS工厂中重写URL
- Javascript重写URL中的宽度、高度
- facebook如何在Chrome中重写url &Firefox