我希望变量$ con从JavaScript函数获取数据(国家/地区)并将其保存在SQL数据库中。插入查询在没有JavaScript代码的情况下正常工作但是当我想使用插入查询将$ con添加到我的数据库时,插入查询不会将数据添加到我的SQL数据库
这是我的代码:
$con = "<script>
function jsonpCallback(data) {
var con = document.write(data.address.country) }
</script>
<script src='http://api.wipmania.com/jsonp?callback=jsonpCallback'></script>";
$sql = "INSERT INTO `searched1`
(`search`, `longitude`, `latitude`, `country`, `date`)
VALUES ('$phone','$lon','$lat','$con','$datetime')";
$result=mysqli_query($conn,$sql);
答案 0 :(得分:1)
我不知道你是如何启动SQL查询但我会使用form
:
<form>
<input name="con" id="con" value="">
<input name="submit" id="submit" value="Submit">
</form>
<script>
document.getElementById('con').value = data.address.country;
</script>
<?php
$con = $_POST['$con'];
$sql = "INSERT INTO `searched1`
(`search`, `longitude`, `latitude`, `country`, `date`)
VALUES ('$phone','$lon','$lat','$con','$datetime')";
?>
答案 1 :(得分:0)
我想补充一下Edward写的前一个答案,但是错误的是你永远无法从Javascript中获取这样的PHP变量值。
该代码在服务器上呈现,而Js仅在“观看者”中呈现。浏览器。
充其量只会输入一个包含脚本函数的字符串。您应该使用表单或Ajax将数据发送到执行数据库插入查询的PHP脚本/函数。这是正确的方法。