Здравствуйте! Не могу понять почему не работает данный скрипт. То есть ошибок не показывает, но он и не работает.
1. Не происходит запись в БД;
2. В ответ от скрипта приходит "false" (видимо из-за того что пункт 1 не работает).
<?php
Include "Config.php";
if ((!empty($_POST['id'])) && (!empty($_POST['key']))) {
$id = $_POST['id'];
$key = $_POST['key'];
$auth_key = md5($api_id."_".$id."_".$api_secret);
if ($key == $auth_key) {
$link = mysql_connect($mysql_host, $mysql_user, $mysql_password)
or die("Could not connect : " . mysql_error());
mysql_query('SET NAMES utf8');
mysql_select_db($mysql_database) or die("Could not select database");
$sql_1 = "SELECT * FROM players WHERE id = '$id'";
$result_1 = mysql_query($sql_1);
if ($result_1 == 0) {
$sql_2 = "INSERT INTO players (id, key) VALUES ('$id', '$key')";
mysql_query($sql_2);
echo json_encode(mysql_fetch_array($result_1));
}else{
echo json_encode(mysql_fetch_array($result_1));
}
}else{
echo "Error key!";
}
}else{
echo "Error post data!";
}
?>
Структура БД:
CREATE TABLE IF NOT EXISTS `players` (
`id` VARCHAR(32) COLLATE utf8_unicode_ci NOT NULL,
`key` VARCHAR(32) COLLATE utf8_unicode_ci NOT NULL,
`experience` INT(32) NOT NULL DEFAULT '50',
`money` INT(32) NOT NULL DEFAULT '1000'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;