2015-12-11 292 views
-1

我正在尝试使用JavaScript变量并将其放入mySQL数据库中。将javascript值分配给PHP变量

我想设置php变量$纬度与javascript position.coords.latitude的值,并把它放在我的数据库中。

<button onclick="getLocation()">Try It</button> 
 

 

 

 
<script> 
 
var x = document.getElementById("demo"); 
 

 
function getLocation() { 
 
    if (navigator.geolocation) { 
 
     navigator.geolocation.getCurrentPosition(showPosition, showError); 
 
    } else { 
 
     x.innerHTML = "Geolocation is not supported by this browser."; 
 
    } 
 
} 
 

 
function showPosition(position) { 
 
<?php 
 

 
$latitude = 'position.coords.latitude'; 
 
$longitude = 'position.coords.longitude'; 
 

 
// Create connection 
 
$conn = mysqli_connect("localhost", "root", "", "site"); 
 
// Check connection 
 
if ($conn->connect_error) { 
 
    die("Connection failed: " . $conn->connect_error); 
 
} 
 

 
$sql = "INSERT INTO annonce (longitude, latitude) VALUES ('$longitude', '$latitude')"; 
 

 

 
if (mysqli_query($conn, $sql)) 
 
{ 
 
\t header('Location: member.php'); 
 
} 
 
else 
 
{ 
 
    echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
 
} 
 

 
?> 
 
    \t 
 
}

+2

如果您希望将javascript变量保存到数据库中,您需要通过表单或AJAX提交它们。 – slapyo

+1

请不要在您的问题中倾销所有代码。只发布相关的片段。 –

回答

0

这是不可能的,因为PHP呈现的jQuery开始之前。您需要使用Javascript或jQuery执行AJAX请求到PHP处理程序。