所以我现在有这个问题已经有一段时间了,我知道关于这个话题有无数的问题,相信我,我尝试了所有解决方案,但仍然无效.
这是最简单的例子,在我的情况下不起作用
jQuery的:
$.ajax({
url: "ajax/add-user.php",
type: "POST",
data: {name: 'John'},
success: function(data){
console.log(data);
}
});
Run Code Online (Sandbox Code Playgroud)
PHP
echo json_encode($_POST);
Run Code Online (Sandbox Code Playgroud)
而已.我总是回来一个空数组作为回应.我试过了serialize(),data:但响应总是空的.我没有得到任何错误,只是一个空数组,当我应该得到发布的值.
例如,如果在php中我尝试了echo一些硬编码变量,我会得到它们,但是$_POST并且$_GET不起作用.
我如何识别问题的任何解决方案或方法?
谢谢.
编辑/解决方案
好的,所以似乎问题是.htaccess重写了url并删除了扩展名.在网络选项卡中,确实永久地移动了请求.从ajax url中删除.php扩展名:解决了它.谢谢你,不好意思浪费时间.干杯
我想首先说我搜索了这个确切的问题,但没有一个满足我的需求.
我使用文本编辑器编写Php,MySQL,HTML,CSS和Javascript"旧方式",从头开始构建每个网站.我只是通过编写应用程序的每一部分来构建从最简单到几乎电子商务的网站.我做的最先进的事情是使用一些简单的类,如数据库包装器,单例,其余的我总是使用函数.
现在,最近我注册了一个有课程的网站(我不会说它的名字因为我不知道我是否被允许)而且我跟着一个关于Laravel 3(我知道它的版本是4.x) ),我必须承认我爱上了它.我非常喜欢它,我想开始使用它,但我担心这样做会使我"愚蠢".
我的意思是Laravel有很多辅助函数,Eloquent结构等等,所以通过使用它我不会再学习纯Php因为你需要的东西已经有了一个构建的辅助函数.
举一个非常简单的例子,如果你想加入你使用的一些表,Eloquent并在3秒钟内完成这个.如果您想要登录用户,那么您将拥有一个Auth可以为您完成所有操作的课程,甚至可以设置会话.
这是我最大的恐惧,我不会再学到任何东西,因为你已经提供了所有你需要的东西,你不必再那么想了.
另一方面,Laravel帮助你很多,它使你的工作非常轻松.尽管我想开始深入挖掘它,但我不禁担心它的缺点.
所以,当用户输入电子邮件以查看电子邮件是否存在时,我正在检查.
$('form.recover-form#check-form').on('submit', function(e){
var form = $(this),
input = $('.check-recover-email'),
span = $('.recover-error'),
email = input.val();
span.text('');
e.preventDefault();
$.ajax({
url: 'ajax/check-email',
async: 'false',
cache: 'false',
type: 'POST',
data: {email: email},
success: function(response) {
if ( response == 'no' ) {
span.text('email does not exist');
} else if ( response == 'ok' ) {
form.submit();
}
}
});
});
Run Code Online (Sandbox Code Playgroud)
PHP代码
if ( Input::isPost('email') ) {
$email = Input::post('email');
$check = $dbh->prepare(" SELECT * FROM users WHERE email = :email ");
$check->execute(array( …Run Code Online (Sandbox Code Playgroud) 我在数据库中有一些字符串,例如SNEAKERS "SUPER STAR" GOLDEN GOOSE。这些是某些产品的标题。当我在a中正常输出它时,它会<p>显示引号,但是当我在一个输入值中回显它时,<input type="text" value="<?= $product->title ?">字符串会在第一个双引号之前被截断,因此该值变为just SNEAKERS。
有什么办法可以在输入值中输出双引号?
编辑:关闭标记是一个错字,在代码中它是关闭的。
我有一个像这样的网址:
abc.com/my+string
Run Code Online (Sandbox Code Playgroud)
当我得到参数时,显然它+用空格替换了,所以我得到my string
+我将url中的替换为%2B,然后我使用rawurldecode(),但结果是一样的。尝试过urldecode(),但我仍然无法plus sign在我的变量中获取 ,它始终是一个空白空间。
我是否遗漏了一些东西,如何my+string从 url 中获取准确的 PHP 内容abc.com/my%2Bstring?
谢谢