提问人:grotivanhelden 提问时间:10/6/2023 更新时间:10/6/2023 访问量:30
是否可以像这样将数据发送到 PHP Skript (AJAX)?
Is it possible to send Data to a PHP Skript like this (AJAX)?
问:
methods: {
ajax: function (task, callback, variables) {
let xhr = new XMLHttpRequest();
let send = "&variables=" + encodeURIComponent(variables);
// console.log(variables[0], variables[1], variables[2], variables[3], variables[4]);
xhr.open("GET", "db_data.php?task=" + encodeURIComponent(task) + send, true);
xhr.onreadystatechange = () => {
if (xhr.readyState === XMLHttpRequest.DONE){
let json = JSON.parse(xhr.responseText);
callback(json); // Um Tabelle anzuzeigen
console.log(json);
}
}
xhr.send(null);
}
submit: function () {
document.querySelector(app.selectors.ids.absenden).addEventListener("click", (e) => {
e.preventDefault();
let vals = [
document.querySelector(app.selectors.ids.projektnummer).value,
document.querySelector(app.selectors.ids.beschreibung).value,
document.querySelector(app.selectors.ids.startdatum).value,
document.querySelector(app.selectors.ids.enddatum).value,
document.querySelector(app.selectors.ids.budget).value
];
app.methods.ajax(app.task.create_project, () => {}, vals)
});
}
}
该代码是程序的摘录,在本例中,该程序将键入到表单中的数据发送到 PHP 脚本,然后更改数据库条目。我的问题是您是否可以将 submit 函数中的 vals 以表单形式传递给 Ajax 函数,以及 Ajax 函数是否可以将数据发送到 PHP 脚本。 提前感谢您的帮助
答:
0赞
Jordy
10/6/2023
#1
如何向 PHP 发送表单的小示例
我能够使用 post 方法不对文本字符串进行编码。
首先创建脚本函数
<script>
function sendText(){
var txt = document.getElementById("txt").value;
var dataForm = new FormData();
dataForm.append('task',txt);
jQuery.ajax({
url: "/db_data.php?",
contentType: false,
processData: false,
data: dataForm,
type: "POST", success:function(data){ }
}); return true;
}
</script>
而 php 部分通过将接收到的文本插入数据库来处理它
<?php
$host = "localhost:3306";
$dbuser = "root";
$dbpwd = "password";
$db = "my_db";
$txt = $_POST['task'];
$conf = mysqli_connect($host, $dbuser, $dbpwd, $db);
mysqli_query($conf,"INSERT INTO my_table (text) VALUES ('$txt')") or die("".mysqli_connect_error()."");
?>
在 HTML 中
<form action="" method="post">
<textarea id="txt"></textarea>
<input type="button" onclick="return sendText();" value="Send"/>
</form>
评论
JSON.stringify
fetch
whether you can pass vals in the submit function to the Ajax function
...这段代码已经在这样做了。...这段代码也已经在这样做了(你还没有发送任何东西,但你有希望看到发送其他变量是如何完成的,然后复制它)。对代码进行一些敷衍的调试会证明这一点,即使您从阅读中并不完全确定。并且必须有 1001 个在线教程已经演示了相同的功能。那么你的问题到底是什么?whether the Ajax function can then send the data to the PHP script
variables