gpt4 book ai didi

javascript - 使用php将结果html文件(包含js代码)导入到mysql

转载 作者:行者123 更新时间:2023-11-29 15:48:48 25 4
gpt4 key购买 nike

我尝试使用 javascript 获取我的位置,但是当我单击“提交”时,数据未输入到页面 action.php

geolocation.php

<form action="action.php" method="post">
<input type="hidden" name="lat" id="geolocation"><br>
<input type="submit" value="Submit">
</form>

<script>
var z = document.getElementById("geolocation");
navigator.geolocation.getCurrentPosition(showPosition);
function showPosition(position) { z.innerHTML = position.coords.latitude + "&lng=" + position.coords.longitude; }
</script>

action.php

<?php
$lat = $_POST['lat'];
$lng = $_POST['lng'];

include 'koneksi.php';

mysqli_query($koneksi,"
INSERT INTO
`data`(lat,lng)
VALUES
('$lat','$lng') ") or die ("ERROR WHEN INSERTING 1 OR DUPLICATE VALIDATE");
?>

最佳答案

当您使用 POST 方法将表单数据发送到 PHP 时,它会读取每个字段的 value 属性,而不是其 HTML。

您可以创建两个隐藏字段并在 JavaScript 中设置它们的,如下所示:

<form action="location.php" method="post">
<input type="hidden" name="lat" id="latitude"><br>
<input type="hidden" name="lng" id="longitude"><br>
<input type="submit" value="Submit">
</form>
<script>
const latitude = document.getElementById("latitude");
const longitude = document.getElementById("longitude");
navigator.geolocation.getCurrentPosition(showPosition);

function showPosition(position) {
latitude.value = position.coords.latitude;
longitude.value = position.coords.longitude;
}
</script>

另请注意,如果您不验证用户输入,也不使用准备好的语句,则很容易受到 SQL 注入(inject)的攻击。<​​/p>

关于javascript - 使用php将结果html文件(包含js代码)导入到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56886813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com