我的服务器上有一个 MySQL 数据库。这就是我的 HTML 在数据库中存储内容的方式
var shV = localStorage.getItem("PersName");
var idV = localStorage.getItem("codeQR");
var posV = localStorage.getItem("position");
window.open('http://*.es/insert.php?sh='+shV+'&id='+idV+'&pos='+posV,
'blank','location=no,hidden=yes,closebuttoncaption=Done,toolbar=no');
Insert.PHP 文件
<?php
try {
$pdo = new PDO('mysql:host=mysql.**');
$shortV = $_GET['sh'];
$idnumberV = $_GET['id'];
$positionV = $_GET['pos'];
$statement = $pdo->prepare("INSERT INTO idtabelle (short, idnumber, position)
VALUES (:sh, :id, :pos)");
$statement->execute(array('sh' => $shortV, 'id' => $idnumberV, 'pos' => $positionV));
echo "$idnumberV eingetragen";
$pdo = null;
} catch (PDOException $e) {
die($e -> getMessage());
}
?>
我想存储它们而不打开新页面或向它们显示插入网址。在数据库中之后,只有当它们真正位于数据库中时,我才需要像“您的数据已输入”这样的反馈。
在另一个 HTML 中,我通过在文本字段中输入 ID 来搜索位置。它像我想要的那样工作。在页面中给出反馈。
搜索.html
<form id="search" name="search" method="post">
<input type="text" id="txt1" name="search_input">
<button type="submit" class="btn btn-info" id="bt1">Get Position</button>
</form>
<div id="div1">Testing</div>
<div id="div2"> Here </div>
<script>
$(document).ready(function(){
$("#search").on("submit", function(e){
e.preventDefault();
$.post("/search3.php", $("#search").serialize(), function(d){
if (!$.trim(d)){
alert("Nothing found !"); }
else{
$("#div1").empty().append(d);
localStorage.setItem("PosGet",d);
document.getElementById("div2").innerHTML=(d);
}
});
});
});
Search.PHP 文件
<?php
try {
$pdo = new PDO('mysql:host=mysql.**');
$pdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$idV = (isset($_POST['search_input'])) ? $idV = $_POST['search_input'] : exit('The search was empty');
$statement = $pdo->prepare("SELECT position, short FROM idtabelle WHERE idnumber = ?");
$statement->bindParam(1, $idV);
$statement->execute();
foreach($statement -> fetchAll() as $row){
echo $row['position'];
}
$pdo = null;
} catch (PDOException $e) {
die($e -> getMessage());
}
?>
如何才能使插入类似于页面中上面的搜索并带有反馈? 谢谢。
最佳答案
在第一个示例中,代码运行一个新窗口(但隐藏),因此您没有机会从初始窗口获得结果。您应该像提供的第二个示例中那样进行操作。
如果您可以使用 jQuery(您的示例看起来像),您可以使用 jQuery.ajax() 函数
$.ajax({
method: "POST",
url: "some.php",
data: { name: "John", location: "Boston" }
})
您还可以有成功和失败回调。示例:
$.ajax({
method: "POST",
url: "some.php",
data: { name: "John", location: "Boston" },
function(){
console.log("success");
},
function(){
console.log("error")
}
})
关于php - 使用 jQuery 插入数据库并获取反馈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43325538/