PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Описание: создал мини-игру
Поиск в теме | Версия для печати
Php-html.org
Отправлено: 22 Апреля, 2011 - 16:58:41
Новичок
Покинул форум
Сообщений всего: 13
Дата рег-ции: Апр. 2011
Откуда: Россия, Екатеринбург.
Помог: 0 раз(а)
Здравствуйте.
Я создал игру, скажите пожалуйста ошибки, пожелания и прочее...
Игра называется: "Угадай: камень, ножницы или бумага!".
Код html:
CODE (
html ):
скопировать код в буфер обмена
<html >
<head >
<meta http-equiv = "Content-Type" content = "text/html; charset=WINDOWS-1251" >
<title > Игра: угадай, что задумано!</ title >
</ head >
<body >
<h3 > Угадайте, что загадано: камень, ножницы, бумага.</ h3 >
<form name = "form1" method = "post" action = "arr.php" >
<p ><span > Введите, что вы предполагаете: </ span >
<input type = "text" name = "arr" >
</ p >
<input type = "submit" value = "Отослать форму" >
</ body >
</ html >
Код php:
PHP:
скопировать код в буфер обмена
<?PHP
$zag = "$_POST[arr] " ;
echo "Вы думаете, что это: " . $_POST [ arr] ;
echo "<br>" ;
$number = "1,2,3" ;
$arr = array ( 'Ножницы' , 'Бумага' , 'Камень' ) ; // Генерируем загаданое
$per = "" ;
for ( $i = 0 ; $i < $number ; $i ++ )
{
// Вычисляем случайный индекс массива
$per .= $arr [ $index ] ;
}
echo "Было задумано:<br>" ;
echo "$per <br>" ;
if ( $per == "Ножницы" ) {
if ( $zag == "Ножницы" ) {
echo "<b>Верно!</b>" ;
}
else {
echo "<b>Не верно!</b>" ; }
}
elseif ( $per == "Бумага" ) {
if ( $zag == "Бумага" ) {
echo "<b>Верно!</b>" ; }
else {
echo "<b>Не верно!</b>" ; }
}
elseif ( $per == "Камень" ) {
if ( $zag == "Камень" ) {
echo "<b>Верно!</b>" ; }
else {
echo "<b>Не верно!</b>" ; }
}
?>
Игра работает, вот у меня на сайте пример: arr[dot]html
Подскажите, как еще уменьшить код и улучшить игру!
koval
Отправлено: 22 Апреля, 2011 - 19:24:39
Новичок
Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2011
Помог: 0 раз(а)
У вас много лишнего. Если хотите могу прокомментировать что именно.
Вот так, я думаю, будет лучше.
PHP:
скопировать код в буфер обмена
<?PHP
echo 'Вы думаете, что это: ' . $_POST [ 'arr' ] ;
echo '<br>' ;
$arr = array ( 'Ножницы' , 'Бумага' , 'Камень' ) ;
// Генерируем загаданое
echo 'Было задумано:<br>' ;
echo $per . '<br>' ;
if ( $_POST [ 'arr' ] == $per )
echo 'Угадал' ;
else
echo 'Не угадал' ;
И да, лучше делать выбор селектом.
Не забудьте отключить глобальные переменные для нормальной работы скрипта.
И еще, тег "<form>" - парный - его нужно обязательно закрывать.(Отредактировано автором: 22 Апреля, 2011 - 20:18:00)
Php-html.org
Отправлено: 23 Апреля, 2011 - 04:53:16
Новичок
Покинул форум
Сообщений всего: 13
Дата рег-ции: Апр. 2011
Откуда: Россия, Екатеринбург.
Помог: 0 раз(а)
Спасибо, буду совершенствовать.
Добавил:
Код изменил, теперь вместо текстового поля - select.
CODE (
html ):
скопировать код в буфер обмена
<html >
<head >
<meta http-equiv = "Content-Type" content = "text/html; charset=WINDOWS-1251" >
<title > Игра: угадайте, что загадано!</ title >
</ head >
<body >
<h3 > Угадайте, что загадано: камень, наожницы, бумага.</ h3 >
<form name = "form1" method = "post" action = "arr.php" >
<p ><span > Выберете, что вы предполагаете: </ span >
<select name = arr size = 3 multiple>
<option value = 1 selected> Ножницы</ option >
<option value = 2 > Камень</ option >
<option value = 3 > Бумага</ option >
</ select >
</ p >
<input type = "submit" value = "Отослать форму" >
</ form >
</ body >
</ html >
Код php теперь выглядит так:
PHP:
скопировать код в буфер обмена
<?PHP
$z = $_POST [ 'arr' ] ;
if ( $z == "1" ) {
echo 'Вы думаете, что это: Ножницы' ;
$z = "Ножницы" ;
}
elseif ( $z == "3" ) {
echo 'Вы думаете, что это: Бумага' ;
$z = "Бумага" ;
}
else {
echo 'Вы думаете, что это: Камень' ;
$z = "Камень" ;
}
echo '<br>' ;
$arr = array ( 'Ножницы' , 'Бумага' , 'Камень' ) ;
// Генерируем загаданое
echo 'Было задумано:<br>' ;
echo $per . '<br>' ;
if ( $z == $per ) {
echo '<b>Угадал</b>' ; }
else {
echo '<b>Не угадал</b>' ; }
?>
Тестим - ТУТ файл arr[dot]html
П.С. Не говорите что-либо заумное, я всего пару дней в php!
П.П.С. Спасибо всем за помощь (Отредактировано автором: 23 Апреля, 2011 - 08:08:16)
koval
Отправлено: 23 Апреля, 2011 - 09:38:53
Новичок
Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2011
Помог: 0 раз(а)
В html можно сделать так
CODE (
html ):
скопировать код в буфер обмена
<select name = arr size = 3 multiple>
<option value = "Ножницы" selected> Ножницы</ option >
<option value = "Камень" > Камень</ option >
<option value = "Бумага" > Бумага</ option >
</ select >
Тогда этот блок
PHP:
скопировать код в буфер обмена
if ( $z == "1" ) {
echo 'Вы думаете, что это: Ножницы' ;
$z = "Ножницы" ;
}
elseif ( $z == "3" ) {
echo 'Вы думаете, что это: Бумага' ;
$z = "Бумага" ;
}
else {
echo 'Вы думаете, что это: Камень' ;
$z = "Камень" ;
будет не нужен.
А если уж хочется в штмл цифрами передавать параметр, то лучше вместо 'if-else' использовать массив.
(Отредактировано автором: 23 Апреля, 2011 - 09:45:10)
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB