我正在使用一些ajax请求来访问php文件。它完美地完成了一部分工作。当我得到我的一个变量的$ _POST值时,它会裁掉单词的结尾。
$.ajax({
type: 'post',
url: 'https://myadress.com',
data: {
workout: JSON.stringify(workout),
username: localStorage.getItem('username'),
workout_name: $('#name').val().toString(),
},
success: function (data) {
alert(data);
},
});
如果我在发送之前提醒了workout_name,它会显示" test"但是当我从我的php文件中回显它时,它会显示" te"。 我想知道它为什么这样做,我无法解决它。我想也许我的其他变量的大小太大了...... 这是我的PHP代码:
` if(isset($_POST['username']) && isset($_POST['workout_name']) && isset($_POST['workout'])) {
$workout_name = $_POST['workout_name'];
echo $workout_name;
$username = $_POST['username'];
$workout = json_decode($_POST['workout']);
}`
感谢您的回答。
修改 感谢答案,它现在正在工作。我只需要这样做:
workout_name: encodeURIComponent($('#name').val())
在我的js文件中,当我在php文件中检索数据时,我使用:
urldecode($_POST['workout_name']);