<?php
include 'config.php';
$lat=$_GET["latitudee"];
$lon=$_GET["longitude"];
$sql="INSERT INTO coordinates(latitude,longitude)
VALUES ('$_POST[$lat]','$_POST[$lon]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
?>
Run Code Online (Sandbox Code Playgroud)
这是我在我的数据库中的表:
CREATE TABLE IF NOT EXISTS `coordinates` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`latitude` float NOT NULL,
`longitude` float NOT NULL,
`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
Run Code Online (Sandbox Code Playgroud)
http://localhost.com/input.php?latitudee=3.14159&longitude=4.14159
值未插入.问题是什么?
试试这个:
$sql="INSERT INTO coordinates(latitude,longitude)
VALUES
('$lat','$lon')";
Run Code Online (Sandbox Code Playgroud)
因为你存储了变量值,如下所示:
$lat=$_GET["latitudee"];
$lon=$_GET["longitude"];
Run Code Online (Sandbox Code Playgroud)
在你的查询中你写这个:
$_POST[$lat]','$_POST[$lon]所以改变它就像我建议的那样.
旁注:确保使用的是哪种方法:POST or GET以及escape防止sql注入的变量.