URL中包含GET参数的AJAX POST请求
AJAX POST request with GET Parameters in URL
您能在AJAX POST请求中硬编码GET变量吗?
例如:
Javascript:
$.ajax({
url:"/script.php?type=1"
type: "POST"
data:{...}
success: function()
})
PHP:
$a = $_GET["type"]
$b = $_POST["some data"]
我为什么需要这个
我想要一个脚本,根据请求的函数运行多个小函数。(因为我不希望我的服务器被只用于一个小目的的文件堵塞)我决定使用URL GET Variable来决定这个选项,因为我不想将与脚本(POST数据)相关的信息与脚本应该运行的实际"模式"混合在一起。
如果这不起作用,是否有任何类似的替代方案不涉及创建文件负载?
为什么不在执行POST请求时只使用POST变量
让事情变得更容易的快速课程。。。
function ajax(type, data) {
return $.ajax({
url:"/script.php",
type: "POST",
data: $.extend(data, {type : type})
});
}
ajax('db', {key : "value"}).done(function(data) {
if ( data === 'success' ) alert('insert happened!');
});
ajax('users', {user : "Bob"}).done(function(userData) {
alert(userData);
});
和在PHP 中
<?php
switch( $_POST['type'] ) {
case "db" :
mysqli_query($sb, 'INSERT ' . $_POST['key'] . 'INTO SOMETHING');
echo "success";
break;
case "user" :
echo get_user_data($_POST['user']);
break;
default : echo "These aren't the droids you're looking for";
}
?>
正如评论中所说,您可以使用php
$_SERVER['QUERY_STRING']
以及例如
parse_str()
-函数来获取get查询并将其解析为数组以便于处理。
搜索"ajax php",或者考虑进一步使用一个框架来实现这一点——客户端(例如jquery,甚至angular),服务器端的php可能是laravel、symfony等等,以使用其他人开发和构建的自动化。
但是:对于你描述的情况,我同意那些喜欢通过post(SSL)提交所有信息的人,只要数据都是关于敏感的"脚本"信息,就像你所说的
相关文章:
- 如何使用自定义标头跨域执行AJAX POST
- 为什么 AJAX POST 请求不起作用
- Ajax POST请求没有'我不了解PHP
- 数据未从ajax POST返回
- AJAX Post的奇怪Javascript/PHP行为
- 使用javascript ajax post方法的未定义偏移PHP错误
- PHP/Ajax/jquery/JON-在Ajax Post之后将echo文本中的一部分作为变量返回
- Ajax Post请求不起作用
- 使用AJAX POST从javascript到带有Strong参数的Rails4控制器
- jQuery AJAX Post方法错误(语法错误)
- Jquery Ajax POST不工作.适用于GET
- 正在拆分AJAX POST变量
- 发送jquery-ajax$.post后重置连接
- ajax post在webapi中传递null参数
- 如何在javascript中使用ajax post更改密码
- 传递单元格值以便使用ajax post更新表
- 如何使用带有动态接受好友按钮的ajax post更新更多的表
- 如何将AJAX POST转换为HTTP POST,以便在单击时发布
- Ajax POST返回成功,但没有;t更新JSON文件
- 通过 ajax POST 向 PHP 发送两个值以查询 SQL 数据库