我是第一次使用 HTML PHP 和 Ajax,所以请耐心等待。大部分代码来自我在网上找到的示例。但是,我无法让它实际插入数据库。 ajax函数确实进入成功函数;成功输出只是显示为警报的 php 文件。
我把这些都放在本地了,所以我启动 chrome 作为
chrome --allow-file-access-from-files file:///C:/filepath/index2.html
我知道这不好,但我正在凑合着。
index.html
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<title>Insert</title>
</head>
<body>
<label>Name</label>
<input type="text" id="name">
<label>Email</label>
<input type="text" id="email">
<button type="submit" id="button">SAVE</button>
<script>
$(document).ready(function(){
$("#button").click(function(){
var name=$("#name").val();
var email=$("#email").val();
$.ajax({
url:'insert.php',
method:'POST',
data:{
name:name,
email:email
},
success:function(data){
alert(data);
},
error:function(data){
alert(JSON.stringify(data));
}
});
});
});
</script>
</body>
</html>
插入.php
<?php
$name=$_POST['name'];
$email=$_POST['email'];
$conn = new mysqli('Azure server URL', 'Username','Password', 'tableName');
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql="INSERT INTO data ('id', 'name', 'email') VALUES (NULL, $name, $email)";
if ($conn->query($sql) === TRUE) {
echo "data inserted";
}
else
{
echo "failed";
}
?> Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
你说
...这不仅不好,而且是造成问题的原因。 Chrome + 您的文件系统无法执行 PHP 代码。
您需要使用具有可用 PHP 运行时的适当 Web 服务器,以便它支持执行 PHP 来响应 HTTP 请求。使用 XAMPP 或 Laragon 安装功能齐全的 PHP 开发环境,其中 PHP、Apache 和 MySQL/MariaDB 可用且已配置,因此您可以在本地计算机上正确开发和测试。
快速修复的另一个选项是 PHP 内置网络服务器 一旦你安装了 PHP 就可以使用,虽然它的功能比较有限,但它与真实的部署环境不太相似,显然如果你也需要数据库等组件,你需要设置你自己单独说一下。