Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // Пример запроса на добавление экспы или получение ее текущего значения
- // http://localhost/expupd.php?&auth=f92b3037ee&nick=Alex&action=add&value=10
- // http://localhost/expupd.php?&auth=f92b3037ee&nick=Bob&action=add&value=-570
- // http://localhost/expupd.php?&auth=f92b3037ee&nick=Bob&action=get
- // Получаем переменные в GET запросе:
- $username = htmlspecialchars($_GET['nick']);
- $action = htmlspecialchars($_GET['action']);
- $value = htmlspecialchars($_GET['value']);
- $auth = htmlspecialchars($_GET['auth']);
- // Проверим пароль доступа к скрипту и и некоторые параметры запроса:
- $codeaccess = 'f92b30H3g7ee';
- if ($auth != $codeaccess) die ("Wrong auth");
- // В имени пользователя могут быть только цифры, буквы и знак нижнего подчеркивания
- if (!preg_match("/^[a-zA-Z0-9_]+$/", $username)) die("Bad login");
- if ($action != 'set' and $action != 'get' and $action != 'add') die("Wrong action");
- // Параметры подключения к базе:
- $host = 'localhost';
- $user = 'zed'; // имя пользователя базы
- $pass = '123456q'; //пароль к базе
- $namebase = 'xp'; // имя базы
- $table = 'xp'; // имя таблицы
- // Подключение к базе
- $connect = mysql_connect($host, $user, $pass) or die('error connect');
- mysql_select_db($namebase, $connect);
- $sql = mysql_query("SELECT exp FROM $table WHERE nick = '$username'") or die (mysql_error());
- $count = mysql_num_rows($sql);
- // Если такого пользователя нет еще в базе, создадим его, и присвоем значение опыта 0
- if ($count == 0)
- {
- mysql_query("INSERT INTO $table (`nick`, `exp`, `lastaccess`) VALUES ('$username', '0', NOW())") or die (mysql_error());
- }
- // Вернем значение опыта
- if($action == 'get')
- {
- $sql = mysql_query("SELECT exp FROM $table WHERE `nick`='$username'") or die (mysql_error());
- $data = mysql_fetch_array($sql);
- echo $data['exp'];
- }
- // Добавим или отнимем (если значение отрицательное) опыт
- if($action == 'add')
- {
- mysql_query("UPDATE $table SET exp = exp + '$value' WHERE `nick`='$username'") or die (mysql_error());
- echo 'OK';
- }
- // Чит фича (установка конкретного значения опыта)
- if($action == 'set')
- {
- mysql_query("UPDATE $table SET exp ='$value' WHERE `nick`='$username'") or die (mysql_error());
- echo 'OK';
- }
- // Закроем соединение с базой
- mysql_close($connect);
- ?>
Advertisement
Add Comment
Please, Sign In to add comment