我正在尝试向php文件发出请求。我从Maps API中的函数中捕获经度和纬度,并使用AJAX将这些点保存在MySQL数据库中。
AJAX
function salvaPonto(latitude, longitude){
$.ajax({
type: "GET",
data: {latitude: latitude,longitude: longitude},
url: "http://localhost/dados/salvaPonto.php",
datatype: 'JSONp',
success: function(data) {
alert("ok");
},
error: function(data){
alert("erro");
}
});
}
PHP文件
<?php
header("Access-Control-Allow-Origin", "*");
error_reporting(0);
$latitude = $_GET['latitude'];
$longitude = $_GET['longitude'];
$conn = mysql_connect('localhost', 'root', '') or die ('Erro de conexão com o banco de dados');
mysql_select_db('app') or die ('Erro ao selecionar banco de dados');
$myquery = "INSERT INTO pontos(latitude, longitude) VALUES ('".$latitude."', '".$longitude."');";
$result = mysql_query($myquery) or die("Query error:".mysql_error());
mysql_close($conn);
echo 1;
?>
错误:
XMLHttpRequest无法加载 http://localhost/dados/salvaPonto.php?latitude=-22&longitude=-43。没有 请求中存在“Access-Control-Allow-Origin”标头 资源。因此,不允许原点'null'访问。
答案 0 :(得分:2)
Lucas你错误地使用了header
功能,因此你的Access-Control-Allow-Origin没有正确设置。 header()
接受标题名称和值作为一个字符串,而不是两个。变化:
header("Access-Control-Allow-Origin", "*");
要:
header('Access-Control-Allow-Origin: *');