Наше прошлое 20072009201120132014
г. Москва, ул. Гостиничная, д. 7А. кор.2
8 (499) 404-26-56
пн-пт 11:00 - 19:00
 

Создаем игру на PHP

Угадайте число в диапазоне от 0 до 100!


В этом уроке мы продолжим тему отправки форм методами GET и POST, начатую в предыдущем уроке, и повторим различные пройденные уроки, на примере создания игры на php.

Вообще PHP не предназначен для создания игр, он больше подходит для разработки интернет магазинов, сайтов, и веб-софта. Поэтому 3D-стрелялку мы сделать не сможем, а сделаем логическую игрушку!

Цель нашей php игры будет в том, чтобы угадать число, которое загадал php.

У нас будет 1 текстовое поле, 1 скрытое поле, и одна кнопка.

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

В правом углу можете попробовать поиграть в демонстрационную версию нашей игры.

Вот исходный код с подробным объяснением:

<?php
$message = "Угадайте число в диапазоне  от 0 до 100!"; //Устанавливаем сообщение по-умолчанию

if (isset($_POST["ugadat"])) { //Если данные были отправлены на сервер
   //В переменную $chislo записываем данные полученные из текстового поля с именем chislo
    $chislo = $_POST["chislo"]; 
    //В переменную $hidden_chislo записываем данные полученные 
    //из скрытого поля с именем $hidden_chislo
    $hidden_chislo = $_POST["hidden_chislo"]; 
    
   //Если число из текстового поля меньше загаданного числа, то выводим сообщение
    if ($chislo < $_POST["hidden_chislo"]) { 
        $message = "Загаданное число немножко больше $chislo"; 
    } 
    //Если число из текстового поля больше загаданного числа, то выводим сообщение
    elseif ($chislo > $_POST["hidden_chislo"]) { 
        $message = "Загаданное число немножко меньше $chislo";
    } elseif ($chislo == $_POST["hidden_chislo"]) { //Если числа равны, то мы угадали!!
        $message = "Ура! Вы победили! 
 Загаданно новое число!";         $hidden_chislo = rand(0, 100); //Загадываем новое число!     } } else { //Если данные из формы не были отправлены     $chislo = 0; //Устанавливаем значение текстового поля по-умолчанию      $hidden_chislo = rand(0, 100); //Загадываем число } ?>
<html>
    <head>
        <title>Дизайн студия OX2.ru - игра Угадай число</title>
    </head>
</html>
<body>
    <h2><?php echo $message; ?></h2>
    <form method="post">
        <input type="text" value="<?php echo $chislo ?>" name="chislo" /> 

        <input type="submit" name="ugadat" value="Угадать" /><br/>

        <input type="hidden" name="hidden_chislo" value="<?php echo $hidden_chislo ?>" />
    </form>
</body>
</html>

Скачать исходник

Хотим обратить внимание, что в данном примере использовались 2 новые функции:

  1. rand (0, 100) — генерирует случайное число, в скобках указываем диапазон (от 0 до 100)
  2. isset (имя переменной) — проверяет на существование переменную. В нашем примере, если форма была отправлена, то создается переменная $_POST['ugadat'] (т.к. отправка формы идет методом POST, а ugadat – имя кнопки «Угадать»)
В этом уроке мы продолжим тему отправки форм методами GET и POST, начатую в предыдущем уроке, и повторим различные пройденные уроки, на примере создания игры на php. Вообще PHP не предназначен для создания игр, он больше подходит для разработки интернет магазинов, сайтов, и веб-софта. Поэтому 3D-стрелялку мы сделать не сможем, а сделаем логическую игрушку!

Комментарии (Написать комментарий)

Тлеукабыл Утельдинов [22.03.2015]

Комментарий:
А можно ли эту игру привязать к базе данных MySQL?

Заполните все поля

Написать комментарий

Ваше имя

Комментарий