PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 12
VeNick Отправлено: 29 Января, 2015 - 01:35:17 • Тема: Запрос • Форум: Вопросы новичков

Ответов: 4
Просмотров: 167
SELECT * FROM `links` WHERE `categoryid`='7'
ну или
$categoryid=7;
$sql=mysql_query("SELECT * FROM `links` WHERE `categoryid`='$categoryid'");

Если надо без повторений, то используй DISTINCT
VeNick Отправлено: 29 Января, 2015 - 01:26:13 • Тема: Xsolla • Форум: HTTP и PHP

Ответов: 1
Просмотров: 1320
Кто то уже сталкивался с новым обработчиком xsolla(прием платежей, проверка пользователя, отмена платежа)? Не совсем понел как делать ответы на их сервер. Если кто сможет обьяснить наглядно кусок кода - к примеру как выводить ответ при проверки на существования пользователя, буду благодарен
VeNick Отправлено: 17 Декабря, 2014 - 11:39:31 • Тема: Access denied for user 'root'@'localhost' • Форум: Вопросы новичков

Ответов: 5
Просмотров: 383
PHP:
скопировать код в буфер обмена
  1. mysql_select_db ($database) or die ("Could not select database");

после
PHP:
скопировать код в буфер обмена
  1. mysql_query("UPDATE email_sent SET sent = '$sent', checkout = '$checkout' WHERE id = '1'") or die(mysql_error());

есть?

используй лучше просто:
PHP:
скопировать код в буфер обмена
  1.  
  2. mysql_query("UPDATE email_sent SET sent = '$sent', checkout = '$checkout' WHERE id = '1'");
  3.  
VeNick Отправлено: 17 Декабря, 2014 - 11:02:54 • Тема: PHP function () ошибка: Undefined variable • Форум: Вопросы новичков

Ответов: 1
Просмотров: 88
ну во первых, где параметры функции? где ты задаешь в функции значения $test1, $test2, $test3?
проще и более универсальней(на множество значений а не только 3) будет вариант:
PHP:
скопировать код в буфер обмена
  1.  
  2. $test=array();
  3. $test1='';
  4. array_push($test,$test1); //добавляем в массив значение
  5. $test2='a';
  6. array_push($test,$test2);
  7. $test3='b';
  8. array_push($test,$test3);
  9.  
  10. $msg=search($test);
  11. echo $msg;
  12. function search($array)
  13. {
  14.         $massage='Нет значений';
  15.         $max_value=count($array)-1; //смотрим сколько всего значений учитывая отсчет в массиве с 0
  16.         for($i=0;$i<=$max_value;$i++) //прогоняем массив
  17.         {
  18.         if(!empty($array[$i])) //если значение то бинго! нашли нужное
  19.         {
  20.                 $massage=$array[$i];
  21.                 break; //если надо: при нахождении поиск далее окончился
  22.         }
  23.         }
  24.  
  25.         return $massage;
  26. }
  27.  
VeNick Отправлено: 17 Декабря, 2014 - 09:22:55 • Тема: Частое обновление • Форум: Вопросы новичков

Ответов: 3
Просмотров: 210
да вот пытаюсь как бы настроить nginx) вроде сделал все верно, но все равно человек с мышкой где двойной щелчок кнопочка есть, игнорит все в подряд. Что я мог тут сделать не так?
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. http {
  3.     include       /etc/nginx/mime.types;
  4.  
  5.     access_log  /var/log/nginx/access.log;
  6.  
  7.     sendfile        on;
  8.     #tcp_nopush     on;
  9.  
  10.     #keepalive_timeout  0;
  11.    keepalive_timeout  65;
  12.     tcp_nodelay        on;
  13.  
  14.     gzip  on;
  15.     gzip_disable "MSIE [1-6]\.(?!.*SV1)";
  16.  
  17.     include /etc/nginx/conf.d/*.conf;
  18.     include /etc/nginx/sites-enabled/*;
  19.         include /usr/local/ispmgr/etc/nginx.domain;
  20.         client_max_body_size 16M;
  21.         log_format isp '$bytes_sent $request_length';
  22.        
  23.         limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
  24.        
  25.         server {
  26.                 server_name m-ages.com.ua www.m-ages.com.ua;
  27.                 listen 91.223.180.105;
  28.                 set $root_path /var/www/mages/data/www/m-ages.com.ua;
  29.                 location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
  30.                         root $root_path;
  31.                         access_log /var/www/nginx-logs/mages isp;
  32.                         access_log /var/www/httpd-logs/m-ages.com.ua.access.log ;
  33.                         error_page 404 = @fallback;
  34.                 }
  35.                 location / {
  36.                         proxy_pass http://91.223.180.105:81;
  37.                         proxy_redirect http://91.223.180.105:81/ /;
  38.                         proxy_set_header Host $host;
  39.                         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  40.                         proxy_set_header X-Forwarded-Proto $scheme;
  41.                         proxy_set_header X-Real-IP $remote_addr;
  42.                 }
  43.                 location /search/ {
  44.             limit_req zone=one burst=5;
  45.         }
  46.         ...
  47.  


файл конфига правил из /etc/nginx/nginx.conf

Сделал вывод секунд при нажатиях, человек показал:
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(38)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(36)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(36)

Проверка в php вообще должна адресовать на форму ввода а исполняемый код не проводится
VeNick Отправлено: 17 Декабря, 2014 - 06:47:12 • Тема: Частое обновление • Форум: Вопросы новичков

Ответов: 3
Просмотров: 210
Всем доброго времени суток, столкнулся с проблемой. Существует проект, при нажатии по ссылку, проводятся обычные проверки if(..) else ... . Пользователи обнаружили что при очень быстром нажатии по ссылки(30-40 кликов в секунду), страница может подлагать, и как я понел, код загружается не полностью ибо нагло игнорирует проверки. Можно ли как то организовать защиту что бы пользователь не мог нажимать чаще чем 3-4 клика в секунду(JS, PHP, настройка nginx/apache). Заранее благодарю
VeNick Отправлено: 04 Апреля, 2014 - 19:54:25 • Тема: Memcache • Форум: Вопросы новичков

Ответов: 8
Просмотров: 243
фишка в том, что игра под телефоны, как показала статистика, все ещё 20% пользователей имеют ошибки при расположении js в скриптах, так что что б охватить всю аудиторию, приходится выкручиваться как могу(
VeNick Отправлено: 04 Апреля, 2014 - 19:24:14 • Тема: Memcache • Форум: Вопросы новичков

Ответов: 8
Просмотров: 243
включал разумеется, все равно не вариант. Бои быстрые если 5х5 а к примеру 20х20 уже не вариант, база сильно захламлена получается, дажи при учете что если бот умирает, то он удаляется из базы. Многие боты кронами создаются каждые пол часа относительно уровней, не всегда могут участвовать в бою и остаются в базе(
VeNick Отправлено: 04 Апреля, 2014 - 19:20:01 • Тема: Memcache • Форум: Вопросы новичков

Ответов: 8
Просмотров: 243
Доброго времени суток, столкнулся с проблемой нагрузки на сервер. Причина ясна - слишком много записей пользователей, тяжелые запросы к мускулу.
Сайт - игра, боты бьют с интервалами в 10 секунд(при обновлении страницы подключаю файл bots.php)
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. ///боты
  4.  
  5. $test_bot=mysql_fetch_array(mysql_query("SELECT * FROM users WHERE rank='бот' AND hp_now>0 AND b_id='$user[b_id]' order by rand() limit 1"));
  6. if($test_bot['time_right'] != $battle['b_start'])
  7. {
  8. mysql_query("UPDATE users SET time_right='$battle[b_start]', time_left='$time' WHERE b_id='$user[b_id]' AND rank='бот'" );
  9. }
  10. if($$battle['b_class'] == "holy")
  11. {
  12. $botss=mysql_query("SELECT * FROM users WHERE rank='бот' AND time_left<'$time' AND hp_now>0 AND h_wave='$user[h_wave]' AND b_id='$user[b_id]'");
  13. }
  14. else
  15. {
  16. $botss=mysql_query("SELECT * FROM users WHERE rank='бот' AND time_left<'$time' AND hp_now>0 AND b_id='$user[b_id]'");
  17. }
  18. if(mysql_num_rows($botss) > 0)
  19. {
  20. while($bot=mysql_fetch_array($botss))
  21. {
  22.         $last_strike=$time-$bot['time_left'];
  23.         $count_strikes=floor($last_strike/15);
  24.         $new_time_s=$bot['time_left']+$count_strikes*15;
  25.         if($count_strikes > 2)
  26.         {
  27.         mysql_query("UPDATE users SET time_left='$time' WHERE id='$bot[id]'");
  28.         }
  29.         else
  30.         {
  31.         if($count_strikes > 0)
  32.         {
  33.                 $say='';
  34.                 mysql_query("UPDATE users SET time_left='$new_time_s' WHERE id='$bot[id]'");
  35.         for($i=1;$i<=$count_strikes;$i++)
  36.         {
  37.                 $mdmg=0;
  38.                         $ebot = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE id!='$bot[id]' AND b_id='$bot[b_id]' AND hp_now>0 AND team!='$bot[team]' order by rand() limit 1"));
  39.                                 if($ebot['live_end'] < $time)
  40.                                 {
  41.                                 $kr=rand(0,500);
  42.                                 $uv=rand(0,500);
  43.                                 $u_kr=$bot['dex']/4;
  44.                                 $e_uv=$ebot['agl']/4;
  45.                                 if($e_uv > 70)
  46.                                 {                               $e_uv=70;
  47.                                 }
  48.                                 if($u_kr > 70)
  49.                                 {
  50.                                 $u_kr=70;
  51.                                 }
  52. $anti_kr=ceil($ebot['agl']/50);
  53. $anti_uv=ceil($bot['dex']/50);
  54. if($anti_kr > 50)
  55. {
  56.         $anti_kr=50;
  57. }
  58. if($anti_uv > 50)
  59. {
  60.         $anti_uv=50;
  61. }
  62. $e_uv-=$anti_uv;
  63. $u_kr-=$anti_kr;
  64.                                 $min_dmg=ceil($bot['str']*3*0.7);
  65.                                 $max_dmg=ceil($bot['str']*3*1.3);
  66.                                 $s_dmg=rand($min_dmg,$max_dmg);
  67.                                 $dmg=$s_dmg - $ebot['armor']*3;
  68.                                 if($dmg < 0 && $ebot['lvl'] <= $bot['lvl'])
  69.                                 {
  70.                                 $dmg=5;
  71.                                 }
  72.                                 if($dmg <= 0 && $ebot['lvl'] > $bot['lvl'])
  73.                                 {
  74.                                 $dmg=15;
  75.                                 }
  76.                 $mdmg=ceil(($bot['str']*3)*($bot['mgmg']/100));
  77.                                 if($ebot['suit'] == "Паладина")
  78.                                 {
  79.                         $dmg*=0.5;
  80.                                 }
  81.                                 elseif($ebot['suit'] == "Легионера")
  82.                                 {
  83.                                 $dmg*=0.75;
  84.                                 }
  85.                                 elseif($ebot['suit'] == "Охотника")
  86.                                 {
  87.                                 $dmg*=0.3;
  88.                                 }
  89.                                 if($ebot['suit'] == "Наместника")
  90.                                 {
  91.                         $dmg*=0.15;
  92.                                 }
  93.                                 if($ebot['mf_dmg'] > 0)
  94.                         {
  95.                                 $dmg=ceil($dmg-$dmg*($ebot['mf_dmg']/100));
  96.                         }
  97.                                         if($e_uv < $uv)
  98.                                 {
  99.  
  100.                         if($u_kr > $kr)
  101.                                         {
  102.                                 $dmg = $dmg*2;
  103.                         $chanse_travma=10;
  104.                         $lvl_travma=rand(1,5);
  105.                         $rand_travma=rand(1,100);
  106.                         if($rand_travma <= $chanse_travma)
  107.                         {
  108.                                 $say.=travma($bot['login'],$ebot['login'],$lvl_travma);
  109.                         }
  110.                                 $say.='<b>'.$bot['login'].'</b>, сделав критический удар, нанес <b><font color="#FF0000"> '.$dmg.' </font></b><font color="blue">-'.$mdmg.'</font> урона <b>'.$ebot['login'].'</b>';
  111.                                         }
  112.                                         else
  113.                                         {
  114.                         $magic='';
  115.  
  116.                         $st_dmg=$dmg;
  117.                         if($bot['wind'] > 0 || $bot['water'] > 0 || $bot['fire'] > 0 || $bot['land'] > 0 )
  118.                         {
  119.                         if($ebot['religion'] != "")
  120.                         {
  121.                         $religion=mysql_fetch_array(mysql_query("SELECT * FROM relogion WHERE name='$ebot[religion]'"));
  122.                         $fi_def=$religion['fire'];
  123.                         $wi_def=$religion['wind'];
  124.                         $wa_def=$religion['water'];
  125.                         $la_def=$religion['land'];
  126.                         }
  127.                         else
  128.                         {
  129.                         $fi_def=0;
  130.                         $wi_def=0;
  131.                         $wa_def=0;
  132.                         $la_def=0;
  133.                         }
  134.                         if($ebot['mf_fire'] > 0)
  135.                         {
  136.                                 $fi_def+=$ebot['mf_fire'];
  137.                         }
  138.                         if($ebot['mf_wind'] > 0)
  139.                         {
  140.                                 $wi_def+=$ebot['mf_wind'];
  141.                         }
  142.                         if($ebot['mf_water'] > 0)
  143.                         {
  144.                                 $wa_def+=$ebot['mf_water'];
  145.                         }
  146.                         if($ebot['mf_land'] > 0)
  147.                         {
  148.                                 $la_def+=$ebot['mf_land'];
  149.                         }
  150.                         $resi_baf=mysql_query("SELECT * FROM bafs WHERE owner='$ebot[login]' AND name='Малая защита от стихий'");
  151.                         if(mysql_num_rows($resi_baf) > 0)
  152.                         {
  153.                                 $fi_def+=30;
  154.                                 $wi_def+=30;
  155.                                 $wa_def+=30;
  156.                                 $la_def+=30;
  157.                         }
  158.                         $resi_baf2=mysql_query("SELECT * FROM bafs WHERE owner='$ebot[login]' AND name='Средняя защита от стихий'");
  159.                         if(mysql_num_rows($resi_baf2) > 0)
  160.                         {
  161.                                 $fi_def+=50;
  162.                                 $wi_def+=50;
  163.                                 $wa_def+=50;
  164.                                 $la_def+=50;
  165.                         }
  166.                         $resi_baf3=mysql_query("SELECT * FROM bafs WHERE owner='$ebot[login]' AND name='Большая защита от стихий'");
  167.                         if(mysql_num_rows($resi_baf3) > 0)
  168.                         {
  169.                                 $fi_def+=100;
  170.                                 $wi_def+=100;
  171.                                 $wa_def+=100;
  172.                                 $la_def+=100;
  173.                         }
  174.                         if($ebot['guild_name'] == "Повелители огня")
  175.                         {                       $fi_def+=3*$ebot['guild_rank'];
  176.                         }
  177.                         if($ebot['guild_name'] == "Повелители воздуха")
  178.                         {
  179.                         $wi_def+=3*$ebot['guild_rank'];
  180.                         }
  181.                         if($ebot['guild_name'] == "Повелители воды")
  182.                         {
  183.                         $wa_def+=3*$ebot['guild_rank'];
  184.                         }
  185.                         if($ebot['guild_name'] == "Повелители земли")
  186.                         {
  187.                         $la_def+=3*$ebot['guild_rank'];
  188.                         }
  189.                         $dmg_mf=0;
  190.                         if($bot['fire'] > 0)
  191.                         {
  192.                                 $fi_ef=$bot['fire']-$fi_def;
  193.                                 if($fi_ef > 0)
  194.                                 {
  195.                                         $fi_damage=ceil($st_dmg*$fi_ef/100);
  196.                                         $dmg_mf+=$fi_damage;
  197.                                         $magic .='<font color="gold">-'.$fi_damage.'<img src="s/fire.png"></font> ';
  198.                                 }
  199.                         }
  200.                         if($bot['wind'] > 0)
  201.                         {
  202.                                 $wi_ef=$bot['wind']-$wi_def;
  203.                                 if($wi_ef > 0)
  204.                                 {
  205.                                         $wi_damage=ceil($st_dmg*$wi_ef/100);
  206.                                         $dmg_mf+=$wi_damage;
  207.                                         $magic .='<font color="gold">-'.$wi_damage.'<img src="s/wind.png"></font> ';
  208.                                 }
  209.                         }
  210.                         if($bot['water'] > 0)
  211.                         {
  212.                                 $wa_ef=$bot['water']-$wa_def;
  213.                                 if($wa_ef > 0)
  214.                                 {
  215.                                         $wa_damage=ceil($st_dmg*$wa_ef/100);
  216.                                         $dmg_mf+=$wa_damage;
  217.                                         $magic .='<font color="gold">-'.$wa_damage.'<img src="s/water.png"></font> ';
  218.                                 }
  219.                         }
  220.                         if($bot['land'] > 0)
  221.                         {
  222.                                 $la_ef=$bot['land']-$la_def;
  223.                                 if($la_ef > 0)
  224.                                 {
  225.                                         $la_damage=ceil($st_dmg*$la_ef/100);
  226.                                         $dmg_mf+=$la_damage;
  227.                                         $magic .='<font color="gold">-'.$la_damage.'<img src="s/land.png"></font> ';
  228.                                 }
  229.                         }
  230.                 }
  231.  
  232.  
  233.                                         $rand=rand(0,2);
  234.                                         switch ($rand) {
  235.                                                 case 0:
  236.                                 $text=' ударил на ';
  237.                                         break;
  238.                                                 case 1:
  239.                                 $text=' врезал на ';
  240.                                         break;
  241.                                                 case 2:
  242.                                 $text=' нападал на ';
  243.                                         break;
  244.                                                 }
  245.                                 $say.='<b>'.$bot['login'].'</b>'.$text.'<font color="#FF0000"> '.$dmg.' </font><font color="blue">-'.$mdmg.'</font> '.$magic.' урона <b>'.$ebot['login'].'</b>';
  246.                                         }
  247.                                         if($ebot['race'] == "Инас")
  248.                                         {
  249.                                         $back_dmg=ceil($dmg*(($ebot['inas_lvl']+5)/100));
  250.                                         if($back_dmg >= $bot['hp_now'])
  251.                                         {
  252.                                                 $back_dmg=$bot['hp_now']-1;
  253.                                         }
  254.                                                 mysql_query("UPDATE users SET hp_now=hp_now-'$back_dmg' WHERE id='$bot[id]'");
  255.                                                 $say.='<br /><font color="red"><b>'.$bot['login'].'</b> обжогся на <u>-'.$back_dmg.'</u> от <b>'.$ebot['login'].'</b></font>';
  256.  
  257.                                         }
  258.                                         $dmg+=$dmg_mf;
  259.                                 }
  260.                                 else
  261.                                 {
  262.                                 $say.='<b>'.$bot['login'].'</b> пытался нанести урон врагу, но промахнулся';
  263.                                 $dmg=0;
  264.                                 }
  265.                                 $skill_test=mysql_query("SELECT * FROM `bot_skills` WHERE `class`='$bot[class]'");
  266.                                 if(mysql_num_rows($skill_test) == 1)
  267.                                 {                                       $skill=mysql_fetch_array($skill_test);
  268.                                         $chanse=rand(1,100);
  269.                                         if($chanse <= $skill['chanse'] && $ebot['rank'] != "бот")
  270.                                         {                                               switch ($skill['func']) {
  271.                                                         case "fireball":
  272.                             $bouns_dmg=$bot['str']*6;
  273.                                                         $say.='<br /><b><font color="gold">'.$bot['login'].'</b> использовал "удар огнём" -'.$bouns_dmg.'<img src="s/fire.png"> на <b>'.$ebot['login'].'</b></font>';
  274.                             $dmg+=$bouns_dmg;
  275.                                                 break;
  276.                                                         case "stun":
  277.                             $time_end=$bot['lvl']+$time;
  278.                             mysql_query("
  279.                                                         INSERT INTO `bafs` ( `id` , `name` , `t_end` , `str` , `agl` , `dex` , `func` , `owner` )
  280.                                                         VALUES (
  281.                                                         '', 'Оглушающий удар', '$time_end', '0', '0', '0', 'stun', '$ebot[login]'
  282.                                                         )
  283.                                                         ");
  284.                                                         $say.='<br /><b><font color="gold">'.$bot['login'].'</b> использовал "оглушающий удар" и оглушил <b>'.$ebot['login'].'</b> на <b>'.$bot['lvl'].'</b> секунд</font>';
  285.                                                 break;
  286.                                                 case "dearmor":
  287.                             $time_end=$time+15;
  288.                             $value=$bot['lvl']*5;
  289.                             $double=$value*2;
  290.                             $armor=$value-$double;
  291.                             mysql_query("
  292.                                                         INSERT INTO bafs SET
  293.                                                         armor='$armor',
  294.                                                         name='Корозия',
  295.                                                         t_end='$time_end',
  296.                                                         func='dearmor',
  297.                                                         owner='$ebot[login]'
  298.                                                         ");
  299.                                                         mysql_query("UPDATE users SET armor=armor+'$armor' WHERE id='$ebot[id]'");
  300.                                                         $say.='<br /><b><font color="gold">'.$bot['login'].'</b> использовал "корозию" и уменьшил броню <b>'.$ebot['login'].'</b> на <b>'.$armor.'</b></font>';
  301.                                                 break;
  302.                                                         case "strike":
  303.                             $bouns_dmg=$bot['lvl']*50;
  304.                                                         $say.='<b><font color="gold">'.$bot['login'].'</b> использовал "мощьный удар" <b>-'.$bouns_dmg.'</b> <b>'.$ebot['login'].'</b></font>';
  305.                             $dmg+=$bouns_dmg;
  306.                                                 break;
  307.                                                 case "heads":
  308.                                                         mysql_query("UPDATE users SET hp_now=hp_now*'0.1' WHERE b_id='$bot[b_id]' AND team!='$bot[team]'");
  309.                                                         $say.='<b><font color="gold">'.$bot['login'].'</b> использовал "Огонь с трех голов" <font color="red">-90% Здоровья противникам</font>';
  310.                                                 break;
  311.                                                         }
  312.                                         }
  313.                                 }
  314.                                 $uron=$dmg+$mdmg;
  315.                                 if($bot['satus_pl'] == "Питомец")
  316.                                 {
  317.                                         $exp_b=ceil($uron/5);
  318.                         $new_exp=$bot['exp']+$exp_b;
  319.                         mysql_query("UPDATE users SET exp='$new_exp' WHERE id='$bot[id]'");
  320.                                 }
  321.                                 mysql_query("UPDATE users SET hp_now=hp_now-'$uron' WHERE id='$ebot[id]'");
  322.                         }
  323.                     mysql_query("
  324. INSERT INTO `logs` ( `id` , `b_id` , `who` , `text` )
  325. VALUES (
  326. '', '$user[b_id]', '', '$say'
  327. )");
  328.  
  329.         }
  330.         }
  331.         }
  332.  
  333. }
  334. }
  335.  
  336. //окончание ботов
  337. ?>
  338.  



Прочитал про мемкэш, но не нашел нормальной инфы, может "духи онлайн" помогут)
Проблема в том, что не охото каждый раз делать кучу запросов к базе, по этому хочу хранить ботов в мемкеше, но нужно как то в файле ботов сортировать кто из врагов бот в этом бою.

Сначала думал сделать $key_name=$user['b_id'].'bot'; но тогда возникает вопрос - нужно ли ботов вообще хранить в базе в таком случае или можно оперировать данными с мемки?
VeNick Отправлено: 14 Марта, 2014 - 02:48:04 • Тема: WAP • Форум: Программирование на PHP

Ответов: 0
Просмотров: 194
Отдам работу 2 - ух лет:
m-ages.com.ua

а так же:
tanks.m-ages.com.ua
rome.m-ages.com.ua
civa.m-ages.com.ua

При одном условии - все доны сохранены(логи), вы ручаетесь что не тронете - большие деньги. при вайпах и тд - учитуете.

Отдами скрипты бесплатно, главное докажите что игроков не обидете.
P.S. в танках обещал 5 написать - утром сделаю:
Small World

1. Институт
професия повышает еффект работы(каждый уровень увеличивает производительность), стоимость зависит от
2. Создать свой бизнес
Создание своего бизнеса
3.справка
4. реклама

WapTanks

1. Блок игрока
2. Молча в чате
3. Взвод
4. Виды боев(хаотичные - случайный разброс, ограничение 20 человек; Каждый сам за себя - команда++, ограничение 10 челвоек; командная игра - заход по командам, ограничения выбирает игрок)
5. Коментарий к боям
6. Карта локаций(6 локаций +броня, +урон)

отдам все лишь за спасибо. писал из за одного мотива - девушки. теперь разочарован во всем. чесно скажу, жалко, переживаю за донатов

P.S. сор за руский, мне побую, не учил и не собираюсь. те кто считают что я безграмотный, это ваша проблема. я на английском пишу чем на руском, простите не учили рускому

ВСЕ ПРОЕКТЫ РАБОЧИЕ, ДОСТУП ДАМ ПОЛНЫЙ ДЛЯ СЛИВА
VeNick Отправлено: 02 Февраля, 2014 - 13:38:14 • Тема: PHP+MySQL • Форум: Вопросы новичков

Ответов: 2
Просмотров: 92
PHP:
скопировать код в буфер обмена
  1.  
  2. $sql=mysql_query("SELECT * FROM inv WHERE owner='$user[login]' AND wear='on'");
  3. while($inv=mysql_fetch_array($sql))
  4. {
  5.     if($user['slot1'] == $inv['id'])
  6.    {
  7.         $slot1=$inv;
  8.    }
  9.    if($user['slot2'] == $inv['id'])
  10.    {
  11.         $slot2=$inv;
  12.    }
  13. }
  14.  


так будет работать корректно и быстрее?
VeNick Отправлено: 02 Февраля, 2014 - 12:43:02 • Тема: PHP+MySQL • Форум: Вопросы новичков

Ответов: 2
Просмотров: 92
Не нашел категории "оптимизация", так что напишу тут.

Смысл проблемы в том, что в конфиг файле нужно создавать переменные - массивы с БД. Можно ли как то оптимизировать запрос?

PHP:
скопировать код в буфер обмена
  1.  
  2. //шлем
  3. if($user['helm'] != 0)
  4. {
  5.         $helm = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[helm]' AND owner='$user[login]'"));
  6. }
  7. //Правая рука
  8. if($user['rhand'] != 0)
  9. {
  10.         $rhand = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[rhand]' AND owner='$user[login]'"));
  11. }
  12. //Левая рука
  13. if($user['lhand'] != 0)
  14. {
  15.         $lhand = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[lhand]' AND owner='$user[login]'"));
  16. }
  17. //Доспехи
  18. if($user['arms'] != 0)
  19. {
  20.         $arms = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[arms]' AND owner='$user[login]'"));
  21. }
  22. //Ботинки
  23. if($user['boots'] != 0)
  24. {
  25.         $boots = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[boots]' AND owner='$user[login]'"));
  26. }
  27. //плащь
  28. if($user['coat'] != 0)
  29. {
  30.         $coat = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[coat]' AND owner='$user[login]'"));
  31. }
  32. //налечники
  33. if($user['handss'] != 0)
  34. {
  35.         $handss = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[handss]' AND owner='$user[login]'"));
  36. }
  37. //Пояс
  38. if($user['belt'] != 0)
  39. {
  40.         $belt = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[belt]' AND owner='$user[login]'"));
  41. }
  42. //амулет
  43. if($user['amulet'] != 0)
  44. {
  45.         $amulet = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[amulet]' AND owner='$user[login]'"));
  46. }
  47. //медаль
  48. if($user['medal'] != 0)
  49. {
  50.         $medal = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[medal]' AND owner='$user[login]'"));
  51. }
  52. //кольцо
  53. if($user['ring'] != 0)
  54. {
  55.         $ring = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[ring]' AND owner='$user[login]'"));
  56. }
  57. //Книга
  58. if($user['book'] != 0)
  59. {
  60.         $book = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[book]' AND owner='$user[login]'"));
  61. }
  62. //Свиток
  63. if($user['roll'] != 0)
  64. {
  65.         $roll = mysql_fetch_array(mysql_query("SELECT * FROM inv WHERE id='$user[roll]' AND owner='$user[login]'"));
  66. }
  67.  


Сейчас при 1 обновлении страницы, выполняется множество запросов к базе данных, разумеется чем меньше тем лучше. В данном случае хотелось бы что их было на 9 меньше Хорошо

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB