gpt4 book ai didi

php - 我的 jQuery 和 PHP 对同一件事给出不同的结果?

转载 作者:行者123 更新时间:2023-12-01 02:25:58 25 4
gpt4 key购买 nike

令人烦恼的大脑 NumPy 问题。

我有两个函数来检查字符串的长度(主要是 js 函数也会 chop ),这是 Javascript 中的函数:

$('textarea#itemdescription').keyup(function() {
var charLength = $(this).val().length;
// Displays count
$('span#charCount').css({'color':'#666'});
$('span#charCount').html(255 - charLength);

if($(this).val().length >= 240){
$('span#charCount').css({'color':'#FF0000'});
}
// Alerts when 250 characters is reached
if($(this).val().length >= 255){
$('span#charCount').css({'color':'#FF0000'});
$('span#charCount').html('<strong>0</strong>');

var text = $('textarea#itemdescription').val().substring(0,255)
$('textarea#itemdescription').val(text);
}
});

这是我要仔细检查的 PHP:

if(strlen($_POST["description"])>255){
echo "Description must be less than ".strlen($_POST["description"])." characters";
exit();
}

我正在使用 jQuery Ajax 发布文本区域中的值。然而我的 php 验证说 strlen() 比我的 js 本质上说的要长。例如,如果我输入一个实心字符串,它会显示 0 或 3 个字符,直到 255。然后我单击“保存”,php 给出的长度为 261。

有什么想法吗?

这是否与 js 读取不同或遗漏的特殊字符、位大小有关?还是与其他事情有关?也许今天生病了!...:P

更新:我添加了 var_dump($_POST['description'])查看传递的内容,它正在返回转义斜杠,例如这是怎么回事?我尝试添加 stripslashes();无济于事...他们从哪里来?

更新 2 - 问题已解决:

基本上我想我刚刚意识到我的服务器打开了魔术引号... grr所以我现在在处理之前已经去掉了斜​​杠。有点烦人,但它必须做!!

感谢您的帮助!

谢谢,斯特凡

最佳答案

最简单的调试方法就是从 PHP 脚本中使用:var_dump($_POST['描述']

我建议您还使用浏览器中的查看源代码来查看任何转义代码、特殊字符代码等...

关于php - 我的 jQuery 和 PHP 对同一件事给出不同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2969370/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com