由于某些原因,我在PHP函数的响应中无处可获得<br/>
标记...
这是ajax:
var paid_value = 'Paid';
$.ajax({
url: 'http://localhost/myshop/owe_money/add_paid.php',
type: 'post',
data: { paid_value:paid_value } ,
beforeSend: function() {
$("#ajax-result").html('Before');
},
success: function(data) {
$("#ajax-result").html(data);
$('input[name="mark_as_paid"]').val(data);
},
error: function(xhr, ajaxOptions, thrownError) {
$("#ajax-result").html('Error');
}
});
PHP:
function add_paid() {
include('../db_connect.php');
$paid_value = $_POST['paid_value'];
if (is_numeric($paid_value)) {
$sql = "UPDATE paid SET first_item = $paid_value";
} else {
$sql = "UPDATE paid SET first_item = '".$paid_value."'";
}
if (mysqli_query($connect, $sql)) {
echo $paid_value;
} else {
echo "Unsuccesful".mysqli_error($connect);
}
die;
}
add_paid();
我的回答应该只是说“支付”,而是说“<br />
付费”。
答案 0 :(得分:0)
如果它发现它进入$ _POST变量,你可以暂时解决问题使用
$paid_value = strip_tags($_POST['paid_value]);
这个答案没有任何保证!
答案 1 :(得分:0)
在您的jQuery代码中,将success
块更改为:
success: function(data) {
$("#ajax-result").html(data);
$('input[name="mark_as_paid"]').val(data);
console.log(data)
},
在浏览器中打开调试器并查看控制台。这将写入从PHP脚本发送的数据值,并且可能有也可能没有换行符。我怀疑换行符可能来自第一页,但这可以让你看到这一点。
我看不出代码有任何问题所以我认为它与显示结果的表单/输入有关 - 你还没有把它包括在内。