• ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By Super_Saimon
      Добрый день! Есть задание - игра в города. Нужно из бд взять перечень городов и в момент ответа компьютера или игрока сравнивать города из списка, взятого из базы. Все, вроде, понятно, но столкнулся с проблемой, что некорректно удаляются города из массива, в котором хранится список городов из базы. Я использую этот массив чтобы знать когда игра закончилась и не повторялись города в ответах. Собственно, сам код без файла с подключением в бд. Там проблем я не обнаружил, массив городов функция возвращает корректный. Но удаление уже выбранных городов - проблема, которую никак не могу решить, вернее, понять в чем суть самой проблемы. Извиняюсь что выкладываю код в таком виде, не нашел аналога jsfiddle для php

       
      session_start();
      if(!empty($_GET['restart'])) {
          unset($_SESSION['cities']);
          unset($_SESSION['answer']);
          unset($_SESSION['incorrect_city']);
          unset($_SESSION['game_over']);
          header('Location: ./form.php');
          exit;
      }
      define('HOST', 'localhost');
      define('USER', 'root');
      define('PASSWORD', '');
      define('DATABASE', 'gamecity');
      $connect = mysqli_connect(HOST, USER, PASSWORD, DATABASE);
      function getCityFromDB($dbconfig) {
          $listOfCities = "SELECT * FROM city ORDER BY city_id ASC";
          $query = mysqli_query($dbconfig, $listOfCities);
          while($res[] = mysqli_fetch_assoc($query)) {
              $cities = $res;
          }
          foreach($cities as $key => $val) {
              foreach($val as $key2 => $val2) {
                  if($key2 == 'city_name') {
                      $city[] = $val2;
                  }
              }
          }
          return $city;
      }
      if (empty($_SESSION['cities'])) {
          $_SESSION['cities'] = getCityFromDB($connect);
      }
      if(!empty($_POST['send'])) {
          if (findCity($_POST['city'], $_SESSION['cities'])) {
              if (empty($_SESSION['answer'])) {
                  $_SESSION['answer'] = firstStep($_POST['city'], $_SESSION['cities']);
                  $temp = deleteCity($_SESSION['answer'], $_SESSION['cities']);
              }else {
                  $answer = answer($_POST['city'], $_SESSION['answer'], $_SESSION['cities']);
                  if($answer) {
                      $_SESSION['answer'] = $answer;
                      $temp = deleteCity($_SESSION['answer'], $_SESSION['cities']);
                  }else {
                      $_SESSION['game_over'] = 2;
                  }
              }
              if(!$temp){
                  $_SESSION['game_over'] = 1;
              }else {
                  $_SESSION['cities'] = $temp;
              }
          }else {
              $_SESSION['incorrect_city'] = 'Некорректный город';
          }
          header('Location: /form.php');
          exit;
      }
      function firstStep($userCity, $arrayOfCities) {
          $temp = '';
          if(!empty($userCity)) {
              foreach ($arrayOfCities as $key => $val) {
                  if(mb_strtoupper(mb_substr($userCity, -1, 1, 'utf-8')) == mb_substr($val, 0, 1, 'utf-8')) {
                      $temp .= $userCity . ',' . $val;
                      return $temp;
                  }
              }
          }
          return false;
      }
      function findCity ($city, $listCities) {
          foreach($listCities as $key => $val) {
              if($val == $city) {
                  return true;
              }
          }
          return false;
      }
      function answer($city, $answer, $arrayOfCities) {
          if(mb_substr($city, 0, 1, 'utf-8' ) == mb_strtoupper(mb_substr($answer, -1, 1, 'utf-8'))) {
              $char = mb_strtoupper(mb_substr($city, -1, 1, 'utf-8'));
              foreach($arrayOfCities as $key => $val) {
                  $temp = mb_strpos($val, $char, 0,'utf-8');
                  if ($temp !== false) {
                      $answer .= ',' . $city . ',' . $val;
                      break;
                  }
              }
              return $answer;
          }
          return false;
      }
      function deleteCity($town, $cities) {
          if (count($cities) > 0) {
              $town = explode(',', $town);
              $cities = array_values($cities);
              for($i = 0; $i < count($town); $i++) {
                  for($j = 0; $j < count($cities); $j++) {
                      if($town[$i] == $cities[$j]) {
                          unset($cities[$j]);
                      }
                  }
              }
              return $cities;
          }
          return false;
      }
    • By kuzia007
      Пример сайта по разработке reactiq точка net 
      Цена на разработку 70 000 рублей. Без дизайна и верстки, от вас нам нужен функционал 
      на фреймворке Lavarel 
      Нужно постараться уложиться в 20 дней по срокам. 
      Работа по Сделке без риска. B и больше ни как. 

      Основные моменты работы сайта: 
      авторизация сайта через стим 
      считывания апи через официальный сайт pubg 
      Трейдов скинов и все остальное не будет! 
      подключить систему оплат 
      создание личного кабинета для пользователя. 
      Есть полное ТЗ проекта, которое мы готовы упрощать на первом этапе.
      Готовы достойно оплачивать ваш труд! 
      Пишите в телеграм @evgensalyah
    • By kuzia007
      Ищем талантливого программиста в игровой проект
      Для разработки игрового проекта требуются талантливые программисты.
      Отличное знание: PHP, JavaScript, Python
      Преимуществом будет если когда-то работали с платформой steam и с голосовым мессенджером Discord.

      Вкратце о проекте: Будет разрабатываться площадка для проведения турниров по играм pubg, dota, cs go.
      Ищем программиста с руками. Не важно какой вы ориентации, вероисповедания и т.д. Нам от вас важен результат!
      Готовы достойно оплачивать ваш труд! 
      Пишите в телеграм @evgensalyah
  • Member Statistics

    46,692
    Total Members
    3,128
    Most Online
    VovkaKrut
    Newest Member
    VovkaKrut
    Joined
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Спрашивают сейчас

  • Пишут сейчас

    • Добрый день. В интернете нашел скрипт загрузки файла с сайта в папку хостинга. Если отдельно ее запускать /public_html/upload.php то все работает - сначала показывает форму где выбираем файл, жмем на кнопку Загрузить - выходит отдельная страница о статусе загрузки..все норм. Но мне нужно этот test.php вывести в содержимое страницы сайта content.php. В index.php подключаю content.php и sidebar.php через include, настраиваю в sidebar.php ссылку 1 <div id="upload"><a href="upload.php" target="_blank" onclick="ajax();return false">Форма загрузки</a></div> , в index.php дописываю обработку нажатия на пункт меню: 1 2 3 4 5 6 7 8 9 $( "#upload" ).click(function(e) {       e.preventDefault();       $.ajax({             url: 'upload.php',             success: function(data) {                 $('#content').html(data);             }         });     }); - при клике страница upload.php грузится, выбираю файл, жму на кнопку - происходит обновление страницы и все, указанная папка на хостинге пустая.
      Содержимое upload.php: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <?   $path = realpath(getcwd() . '/../files/input/');   if(!file_exists($path)) die("<b>Пожалуйста, создайте папку <font color=red>".$path."</font> и <a href=?>повторите попытку загрузить файл</a>.</b>"); if(empty($_FILES['UserFile']['tmp_name'])) echo"<form method=post enctype=multipart/form-data> Выберите файл: <input type=file name=UserFile> <input type=submit value=Отправить> </form>"; elseif(!is_uploaded_file($_FILES['UserFile']['tmp_name'])) die("<b><font color=red>Файл не был загружен! Попробуйте <a href=?>повторить попытку</a>!</font></b>"); else{ if(@!copy($_FILES['UserFile']['tmp_name'],$path.chr(47).$_FILES['UserFile']['name'])) die("<b><font color=red>Файл не был загружен! Попробуйте <a href=?>повторить попытку</a>!</font></b>"); else echo "<center><b>Файл \"<font color=red>".$_FILES['UserFile']['name']."\"</font> успешно загружён на сервер!</font></b></center>"."<hr>". "Тип файла: <b>".$_FILES['UserFile']['type']."</b>". "Размер файла: <b>".round($_FILES['UserFile']['size']/1024,2)." кб.</b>". "<hr><center><a href=?>Загрузить ещё один файл!</a></center>"; } ?> 1 2 <div id="content"> </div> Подскажите почему так происходит? Что в коде нужно поправить для адекватной его работы? Что нужно добавить чтобы статус сообщения об успешной/неуспешной загрузки выходили в этом же content.php без перезагрузки страницы? - какой ajax код прописать для этого случая? Заранее спасибо
    • Можно как-то с помощью HTML & CSS сделать так что когда добавляешь новый блок на страницу, то предыдущие сунуться в бок, а последний переходит на другую страничку, и так далее. Например если добавить новый товар в интернет магазин, то все товары по итогу посунуться на один, а последний перейдёт на следующею страницу. А если только с помощью JS или еще как то какой самый простой способ.
    • .price__link:hover .price__title { background-color: #49cbcd; } Верстаю учебный макет и не получается сделать так что бы при наведении курсора мышки на ссылку изменялся фон другого элемента. Что может быть не так?  
  • Popular Contributors