Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Игра типа виселица

Сообщения:  [1-10]    [11-20]  [21-26] 

 
 автор: chexov   (02.11.2007 в 14:12)   письмо автору
 
   для: Unkind   (02.11.2007 в 13:06)
 

Кстати вы правы:) сделал виндовс 1251 и все стало на свои места:) спасибо Сане и Unkind за помощь:)

   
 
 автор: chexov   (02.11.2007 в 13:57)   письмо автору
 
   для: Unkind   (02.11.2007 в 13:06)
 

Сейчас уже вопрос не в этом, а в том: как в предложенном мною коде сделать так чтобы при нажатие на букву, буква изчезала из алфавита не зависимо от того угадана она или нет

   
 
 автор: Unkind   (02.11.2007 в 13:06)   письмо автору
 
   для: Саня   (30.10.2007 в 15:54)
 

Да все в порядке с str_repeat(). Просто Вы в UTF-8, небось, сохранили.

   
 
 автор: chexov   (01.11.2007 в 11:18)   письмо автору
 
   для: chexov   (01.11.2007 в 01:32)
 

подскажите кто нибудь как убирать нажатую букву из алфавита..

   
 
 автор: chexov   (01.11.2007 в 01:32)   письмо автору
 
   для: Саня   (30.10.2007 в 15:54)
 

подскажите как убирать нажатую букву из алфавита....пожалуйста

   
 
 автор: chexov   (31.10.2007 в 15:10)   письмо автору
 
   для: chexov   (31.10.2007 в 11:42)
 

я сделал так:

<?php
header 
("Content-type:text/vnd.wap.wml;");
$file_parole 'word.dat';   //словарь слов 

$alfabeto = array ('А' => 'a','Б' => 'b','В' => 'c','Г' => 'd','Д' => 'e',
 
'Е' => 'f','Ж' => 'g','З' => 'h','И' => 'i','Й' => 'j','К' => 'k','Л' => 'l',
 
'М' => 'm','Н' => 'n','О' => 'o','П' => 'p','Р' => 'q','С' => 'r','Т' => 's',
 
'У' => 't','Ф' => 'u','Х' => 'v','Ц' => 'w','Ч' => 'x','Ш' => 'y','Щ' => 'z',
 
'Ь' => '1','Ъ' => '2','Ы' => '3','Э' => '4','Ю' => '5','Я' => '6');

$paperino session_name ("found");
session_register ("regfound");

//выбор слова из файла
function ScegliParola ($file_parole) {
 
$content file ($file_parole);
 
$numero_parole = (count ($content)-1);
 
$posizione_parola rand (0, ($numero_parole));
 
$linea $content[$posizione_parola];
 
$parola rtrim ($linea);
 return (
$parola);
}

// изменяет все неугаданные буквы на _
function CalcolaIndovinata ($parola$escludi$alfabeto) {
 
$alfabeto array_flip ($alfabeto);
 
$escluse strtr ($escludi$alfabeto);
 
$escluse '['.$escluse.']';
 
$escluse ereg_replace ($escluse'''[АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЫЭЮЯ]');
 
$indovinata ereg_replace ($escluse'_'$parola);
 return 
$indovinata;
}

// вставляет выбранную букву в слово
function TrovaLettera ($lettera$parola$scelte$alfabeto) {
 
$alfabeto array_flip ($alfabeto);
 
$lettera strtr ($lettera$alfabeto);
 
$scelte.= $lettera;
 if (
ereg ($lettera$parola)) {
  
$controllo true;
 }
 else {
  
$controllo false;
 }
 
$risposta = array ($scelte$controllo);
 return 
$risposta;
}

if ((isset(
$letter) and isset($regfound))) {
 
$variab explode ('/'$regfound);
 
$indovina $variab[0];
 
$scelte $variab[1];
 
$tentativi $variab[2];
 
$checklet TrovaLettera ($letter$indovina$scelte$alfabeto);
 
$scelte $checklet[0];
 if (!
$checklet[1]) {
  
$tentativi $tentativi +1;
 }
 
$indovinata CalcolaIndovinata ($indovina$scelte$alfabeto);
}
else {
 
$tentativi=0;
 
$scelte = ('_');
 
$indovina ScegliParola ($file_parole);
 
$indovinata CalcolaIndovinata ($indovina$scelte$alfabeto);
}

$regfound = ($indovina.'/'.$scelte.'/'.$tentativi);

echo 
"<?xml version=\"1.0\"?>
<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">
<wml><head><meta http-equiv=\"Cache-Control\" content=\"no-cache\" forua=\"true\"/></head><card title=\"&#x0423;&#x0433;&#x0430;&#x0434;&#x0430;&#x0439;&#x043A;&#x0430;!\">"
;
print 
"<p align=\"center\">
&#x0418;&#x0433;&#x0440;&#x0430; - &#x0443;&#x0433;&#x0430;&#x0434;&#x0430;&#x0439; &#x0441;&#x043B;&#x043E;&#x0432;&#x043E;!<br/>"
;

print 
iconv("windows-1251","utf-8","Ошибок $tentativi").' &#x0438;&#x0437; 6<br/>';
$caratteri preg_split('//'$indovinata, -1PREG_SPLIT_NO_EMPTY);
foreach (
$caratteri as $lettalf) {
 
$lettalf strtr ($lettalf$alfabeto);
 if (
$lettalf==' ') {
  print 
'';
 }
 else {
$all = array ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','1','2','3','4','5','6');
$addd = array ('а','б','в','г','д','е','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ь','ъ','э','ы','ю','я');
print 
iconv("windows-1251","utf-8",str_replace ($all,$addd,$lettalf));

}
 print (
' ');
}
print (
'<br/><br/>');


if (
$indovina!=$indovinata)
{
if (
$tentativi>=6)
{
print 
iconv("windows-1251","utf-8","Вы не угадали задуманое слово.<br/>Слово было: ".strtolower($indovina).""); session_destroy(); 
}
 else {
$scelt preg_split('//'$scelte, -1PREG_SPLIT_NO_EMPTY);
print (
'');
foreach (
$alfabeto as $lettalf) {
$contrl false;
foreach (
$scelt as $letter) {
if (!
strcasecmp ($lettalf$letter))
{
$contrl true;
}
}
if (
$contrl)
{
print 
$lettalf;
}
else {
$al = array ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','1','2','3','4','5','6');
$add = array ('а ','б ','в ','г ','д ','е ','ж ','з ','и ','й ','к ','л ','м ','н ','о ','п ','р ','с ','т ','у ','ф ','х ','ц ','ч ','ш ','щ ','ь ','ъ ','э ','ы ','ю ','я ');

print 
'<a href="index.php?letter='.$lettalf.'&amp;'.SID.'">'.iconv("windows-1251","utf-8",str_replace ($al,$add,$lettalf)).'</a>';
}
if (
$lettalf=='k' or $lettalf=='v'){print ('<br/>');}
}
}
}
else 
{
 print 
iconv("windows-1251","utf-8","Поздравляю! Вы угадали слово!");
 
session_destroy();
}
echo 
iconv("windows-1251","utf-8","<br/><br/><small><a href=\"index.php\">Еще поиграть!</a></small>");
print 
"</p>";
print 
"</card></wml>";
?>

все работает на ура, но только при угаданой букве эта буква не убирается из алфавита, помогите сделать чтобы она убиралась

   
 
 автор: chexov   (31.10.2007 в 11:42)   письмо автору
 
   для: KPETuH   (31.10.2007 в 08:14)
 

я проверил на хостинге - не работает как надо:(

   
 
 автор: KPETuH   (31.10.2007 в 08:14)   письмо автору
 
   для: chexov   (31.10.2007 в 06:52)
 

в PHPed'е проверил код все работает нормально :)

   
 
 автор: chexov   (31.10.2007 в 06:52)   письмо автору
 
   для: chexov   (30.10.2007 в 16:06)
 

а еще глюки с кодировкой и когда угадаешь слово не выводит вы выиграли:(

   
 
 автор: chexov   (30.10.2007 в 16:06)   письмо автору
 
   для: Саня   (30.10.2007 в 15:54)
 

у меня не денвер у меня как раз такая связка...что же делать?

   

Сообщения:  [1-10]    [11-20]  [21-26] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования