PHP Javascript Mysql插入
我正在尝试使用java脚本提示符将值插入MySQL。我有一个html文件和一个php文件 保存为PHP Javascript Mysql插入,javascript,php,html,mysql,Javascript,Php,Html,Mysql,我正在尝试使用java脚本提示符将值插入MySQL。我有一个html文件和一个php文件 保存为Test.html的html文件: <button onclick="myFunction()">Create Project</button> <script> function myFunction() { var project = prompt("Please enter project name"); if (project
Test.html
的html文件:
<button onclick="myFunction()">Create Project</button>
<script>
function myFunction() {
var project = prompt("Please enter project name");
if (project != null && project !="") {
$.post("conn.php", { project : project });
}
}
</script>
如果我删除post参数,conn.php可以完美地工作并插入值
例如,与此相反:
$proj = $_POST['project'];
$sql = "INSERT INTO projects (project_name) VALUES ('$proj')";
如果我使用:
$proj = "NewProject";
$sql = "INSERT INTO projects (project_name) VALUES ('$proj')";
NewProject
被插入数据库
我不确定我的index.html中是否缺少某些内容,这些内容没有在提示到php脚本中发布值。我试过
echo$_POST['project']代码>而不是插入MySQL。回显丢失。我已经运行了您给定的代码,它只运行了我在脚本代码上方添加的jquery链接
请检查此更正
<button onclick="myFunction()">Create Project</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
function myFunction() {
var project = prompt("Please enter project name");
if (project != null && project !="") {
$.post("conn.php", { project : project },function(response){
console.log(response);
});
}
}
</script>
创建项目
函数myFunction(){
var project=提示(“请输入项目名称”);
如果(project!=null&&project!=“”){
$.post(“conn.php”,{project:project},函数(响应){
控制台日志(响应);
});
}
}
我还在conn.php文件中添加了带有$_POST参数的函数
<?php
$servername = "localhost";
$username = "root";
$password = "Password";
$dbname = "db1";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$proj = isset($_POST['project'])?$_POST['project']:'';
$sql = "INSERT INTO projects (project_name) VALUES ('$proj')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
如果如果(!isset($\u POST['project'])
,您已经有问题了<代码>$conn->查询($sql)!=正确
。您在$\u POST['project']
@NitinKawane中没有获得价值Yes@PHPglue是否必须将insert语句包装在if中(!isset
非常感谢…它确实起作用了…我确实让脚本指向jquery.min.js…但是,isset方法发挥了我猜的神奇作用。再次感谢你。我会接受你的回答。答案非常糟糕,没有向OP说明他的错误。此外,“isset”不是“方法”jquery应该添加到页面的标题部分。总体来说,答案很差。
<?php
$servername = "localhost";
$username = "root";
$password = "Password";
$dbname = "db1";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$proj = isset($_POST['project'])?$_POST['project']:'';
$sql = "INSERT INTO projects (project_name) VALUES ('$proj')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>