gpt4 book ai didi

php - 将数据从 JavaScript 发送到服务器到 PHP,得到 500 错误

转载 作者:行者123 更新时间:2023-11-28 03:06:53 24 4
gpt4 key购买 nike

我一直在寻找将数据从我的网站发送到服务器数据库的代码示例或方法。

找到一些选项后,我决定调用 ajax 来发送数据。代码是:HTML:

<form name="form" method="post">
<p> xxxxxx </p>
<input type="text" id="xxxxxx" class="textInput"/>
<p> yyyyyy </p>
<input type="text" id="yyyyyy" class="dateForm" />
<p> zzzzzz </p>
<input type="text" id="zzzzzz" class="dateForm" />
<input type="image" src="img/submit.png" class="addButton" name="Añadir"/>
</form>

jquery代码:

$(document).on("click", ".addButton", function(){

var json = {"xxxxxx": $("#xxxxx").val(),
"yyyyyy": $("#yyyyyy").val(),
"zzzzzz": $("#zzzzzz").val()};

$.ajax({
type: 'POST',
url: 'scripts/sendData.php',
data: {param1: json},
dataType: 'json',
success: function(data){
}
});

});

和php代码:

<?php

$db = ***connection parameters***;
$c1 = oci_connect(***connection parameters***);

if($c1){

$myJson = json_decode($_POST['param1']);
$xxxxxx= $myJson['xxxxxx'];
$yyyyyy= $myJson['yyyyyy'];
$zzzzzz= $myJson['zzzzzz'];

$sql = "INSERT INTO table (xxxxxx, yyyyyy, zzzzzz) VALUES (:xxxxxx,
to_date(:yyyyyy), to_date(:zzzzzz))";
$stid = oci_parse($c1, $sql);
oci_bind_by_name($stid, ':xxxxxx', $xxxxxx);
oci_bind_by_name($stid, ':yyyyyy', $yyyyyy);
oci_bind_by_name($stid, ':zzzzzz', $zzzzzz);

oci_execute($stid);
oci_free_statement($stid);
oci_close($c1);

}
}
?>

用chrome调试json创建正确,500错误是服务器错误,所以错误肯定是在php代码上。连接应该没问题,因为我从服务器正确获取数据。

我已经多次更改代码通过互联网查看,但仍然无法发送数据:S 谁能告诉我错误在哪里?

PD:如果我在 if($c1){ 之前放置一个 echo 并手动输入放入 ajax 方法中的 url,我什么也得不到。这意味着什么吗?

谢谢和问候

最佳答案

尝试以下一些方法:

从 ajax 调用中移除 dataType: 'json'

像这样为 json 变量创建一个普通的 javascript 对象:

var json = {asdf: $("#xxxxx").val(),
ghjk: $("#yyyyyy").val(),
klyx: $("#zzzzzz").val()};

使用数据:{param1: JSON.stringify(json)}

编辑:

尝试将 ajax-post 绑定(bind)到表单提交,而不是点击按钮,用户可以通过按回车键或其他方式发送表单...

$(document).on("submit", "form", function(){
....
});

关于php - 将数据从 JavaScript 发送到服务器到 PHP,得到 500 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32270285/

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