iam пытается сделать php-функцию, которая принимает параметры с URL-адреса и вставляет его в базу данных Я попытался изучить его, набрав «url-адрес», но нет никакой вставки, что может быть проблемой ?Получение параметров из url
<?php
$Lat = $_GET['lat']; //Get Latitude Data
$Long = $_GET['lng']; // Get Longitude Data
$type = "restaurant"; //marker type
$name = "A.C.S"; //Name
$add= "Bahrain";
$dbName = "uobtrack_acstracking"; //Database name
$db = mysql_connect ("localhost","username", "password") or die("Unable To Connect "); //Connect to database
$test= mysql_select_db ($dbName,$db) or die("Unable to select database"); //Test Connection
$query = "INSERT INTO `uobtrack_acstracking`.`markers` (`name`, `address`, `lat`, `long`, `type`) VALUES ('$name', '$add', '$Lat', '$Long', '$type');"; //Insert Query
$Alpha = @mysql_query($query,$db); //Execute Query
if($Alpha)
echo "<br> insertion succeeded...";
else
echo "<br> insertion failed...";
mysql_close($db); //Close Connection
}
?>
любые ошибки, видимые, но не сказать, но напрямую вставлять данные пользователя в базу данных могут быть большой ошибкой, и я бы рекомендовал использовать библиотеку PDO с надлежащим связыванием, – Neo
удалите @ из @mysql_query, чтобы увидеть сообщения об ошибках. Также используйте echo mysql_errno ($ db). ":". mysql_error ($ db). "\ n"; для печати ошибок mysql –
mysql- lib устарел с PHP 5.5.0. Поэтому лучше использовать mysqli (например mysqli_query()). Добавьте ваш запрос к отказу SQL-Injection, поскольку вы напрямую используете пользовательский ввод! Удалите @ перед запросом, чтобы получить сообщение об ошибке для отладки. Вы проверяли соответствие типов? Вы вводите все значения в виде строки. Может возникнуть проблема, если вы определили (например) поле lat как целое. – newBee