Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
  • Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Веб [DLE] Перевод денег между игроками

Мда, решил начать изучение php, так уже оказалось что херню запил... :D
Кто может рассказать по подробнее про:
mysql_real_escape_string ?
Гуглил, прочитал, не понял -_-
 
Мда, решил начать изучение php, так уже оказалось что херню запил... :D
Кто может рассказать по подробнее про:
mysql_real_escape_string ?
Гуглил, прочитал, не понял -_-
Почитай на досуге http://ru.wikipedia.org/wiki/%C2%ED%E5%E4%F0%E5%ED%E8%E5_SQL-%EA%EE%E4%E0
http://www.php.su/mysql_real_escape_string
http://www.php.su/preg_match
Можно юзать preg_match и без mysql_real_escape_string когда разберешься какие символы экранировать.
 
Мда, решил начать изучение php, так уже оказалось что херню запил... :D
Кто может рассказать по подробнее про:
mysql_real_escape_string ?
Гуглил, прочитал, не понял -_-
Если коротко.
У тебя запрос
$a=mysql_query("INSERT INTO database (1, 2, 3) VALUE ('$_POST['b'], '$c', '$d')");

Я могу в поле input-а прописать любой запрос просто дописав кавычку и закрывающую скобку. Т.е.

$a=mysql_query("INSERT INTO database (1, 2, 3) VALUE (''); DROP DATABASE 'имя_бд'; INSERT INTO 'имя_бд' VALUE ...") ну и т.д.

А mysql_real_escape_string экранирует кавычки ( ' и " ) и вместо них вводит \' и \" соответственно.

Вроде все верно написал. Конкретно этот запрос может и не сработает, но я для примера написал.
 
Если коротко.
У тебя запрос
$a=mysql_query("INSERT INTO database (1, 2, 3) VALUE ('$_POST['b'], '$c', '$d')");

Я могу в поле input-а прописать любой запрос просто дописав кавычку и закрывающую скобку. Т.е.

$a=mysql_query("INSERT INTO database (1, 2, 3) VALUE (''); DROP DATABASE 'имя_бд'; INSERT INTO 'имя_бд' VALUE ...") ну и т.д.

А mysql_real_escape_string экранирует кавычки ( ' и " ) и вместо них вводит \' и \" соответственно.

Вроде все верно написал. Конкретно этот запрос может и не сработает, но я для примера написал.
Благодарю, сейчас исправлю ошибки.

alexandrage,
Спасибо, почитал на wiki всё понял! Тоже огромное спасибо.
 
Переводить реальные деньги, или же игровые?
 
Переводить реальные деньги, или же игровые?
Деньги, которые вкладывает игрок. (БД => dle_users => realmoney)
"realmoney" - колонка в таблице "dle_users" :D
Думаю полезный скрипт, правда было много дыр, но уже пофиксино!
 
Если кому нужно, могу выложить модуль перевода из одной валюты в другую. Т.е "Обменник"
 
@Almazik0_o, если ввести сумму со знаком - , тот как вы понимаете , сумма на счету прибавляется , а не отнимается =)
Попробовал отфильтровать результат через регулярные выражения, но не хватает у меня знаний по программированию :( Получилось только привязать к кабинету добрика :confused:
 
@Almazik0_o, если ввести сумму со знаком - , тот как вы понимаете , сумма на счету прибавляется , а не отнимается =)
Попробовал отфильтровать результат через регулярные выражения, но не хватает у меня знаний по программированию :( Получилось только привязать к кабинету добрика :confused:
Там никаких "+" и "-" не надо ставить. Этот скрипт там и называется перевод денег, пишешь ник игрока и сумму которую хочешь передать. И всё. :D
 
Там никаких "+" и "-" не надо ставить. Этот скрипт там и называется перевод денег, пишешь ник игрока и сумму которую хочешь передать. И всё. :D
Ты наверно не понял , просто таким образом можно воровать деньги у другого игрока !
 
Хмм... Что - нибудь придумаю.
Код:
$username = $member_id['name'];
$money = mysql_real_escape_string($_POST['money']);
$k = 30; ///коэффициент валюты
$ico = $money * $k;
if ($money < 1) {$error = "Невозможно выполнить операцию";}
if (isset($error)) { echo $error; exit;}
mysql_query ("UPDATE dle_users set money=money-$money where name='$username'");
mysql_query ("UPDATE iConomy set balance=balance+$ico where name='$username'");
echo 'Вы обменяли '.$money.' рублей на '.$ico.' коинов!';
 
Под Webmcr запели,плз...
Кто согласен,лайкайте пост!
 
Попытался переделать под WebMcr ,ошибка Hacking attempt!Сменил на MCR , все ровно пишет
 
Убрал защиту,теперь ошибка Игрока с ником no_ob11 - не существует!
config=$username = 'username';
WebMcr 2.0
 

Поделиться этой страницей

Назад
Верх