У меня есть приложение iOS, которое должно получать данные JSON из базы данных MySQL, используя строку с параметрами и скриптом PHP. Строка выглядит так: NSString * getDataURL1 = [NSString stringWithFormat: @ "http://myhost.com/jsoncar.php?carOne=%@", _carOneToServer]; где _carOneToServer - строка содержит определенную модель автомобиля, которую пользователь выбрал в моем приложении, например «AUDI A3 1.8TFSI». В базе данных MySQL у меня точно такая же модель автомобиля.Как получить данные из mySQL с помощью строки с параметрами?
PHP-скрипт должен проверять соответствие моделей между запросами ULR и базой данных MySQL и возвращает параметры для этой модели автомобиля.
До сих пор я написал код, но он возвращает []. Я понимаю, что мне нужны переменные для работы, но я не знаю PHP, поэтому вам нужна ваша помощь. Спасибо.
PHP скрипт:
$host = "localhost"; //Your database host server
$db = "MyDataBase"; //Your database name
$user = "user"; //Your database user
$pass = "password"; //Your password
$connection = mysql_connect($host, $user, $pass);
//Check to see if we can connect to the server
if(!$connection) {
die("Database server connection failed.");
} else {
//Attempt to select the database
$dbconnect = mysql_select_db($db, $connection);
//Check to see if we could select the database
if(!$dbconnect) {
die("Unable to connect to the specified database!");
} else {
if (isset($_GET['carOne'])) {
$carModel = $_GET[carOne];
$query = "SELECT carFuelEconomy, carPurchasePrice FROM cars
WHERE carModel = $carModel";
$resultset = mysql_query($query, $connection);
$records = array();
//Loop through all our records and add them to our array
while($r = mysql_fetch_assoc($resultset)) {
$records[] = $r;
}
//Output the data as JSON
echo json_encode($records);
}
}
}
MySQL базы данных:
CREATE TABLE cars
(
id INT PRIMARY KEY NOT NULL auto_increment,
carModel VARCHAR(255),
carFuelEconomy int,
carPurchasePrice int,
distanceTraveledDaily int,
lenghtOfOwnership int
);
-- Insert data into our table
INSERT INTO cars(carModel, carFuelEconomy, carPurchasePrice, distanceTraveledDaily, lenghtOfOwnership)
VALUE ('AUDI A3 1.8TFSI', 27, 30795, 30, 76);
INSERT INTO cars(carModel, carFuelEconomy, carPurchasePrice, distanceTraveledDaily, lenghtOfOwnership)
VALUE ('AUDI A3 2.0TDI', 36, 33495, 30, 76);
INSERT INTO cars(carModel, carFuelEconomy, carPurchasePrice, distanceTraveledDaily, lenghtOfOwnership)
VALUE ('AUDI A3 2.0TFSI', 33, 34095, 30, 76);
изменение $ carModel = $ _GET [Carone]; до $ carModel = $ _GET ['carOne']; –
Не забудьте проверить мой ответ как правильный ;-) –