если надо то могу код привести но там 200 строк. короче вот в чем проблема запускаю программку он выдает в браузере. вот код: PHP: <?php echo ' <body> <H1><center>Поиск слов</center></H1> </body>'; if ($wordList == NULL) { $word = array( "Andy", "Heathet", "Liz", "Matt", "Jacob"); $boardData = array( width => 10, height => 10, name => "General Puzzle" ); //получаем данные о головоломке из html-формы $boardData = array ( width => $width, height => $height, name => $name ); //пытаемся полуить список слов из полученных данных if (parseList() == TRUE) { $legalBoard = FALSE; //попытка повторяется while ($legalBoard == False) { clearBoard(); $legalBoard = fillBoard(); }//завершение цикла //создаем решение $key = $board; $keyPuzzle = makeBoard($key); //создаем окончательную головоломку addFoils(); $puzzle = makeBoard($board); //выводит страницу результатов printPuzzle(); }//завершение if для проанализиррованного списка }//завершение if для проверки существования списка слов function parseList() { global $word, $wordlist, $boardData; $itWorked = TRUE; $wordList = strtoupper($wordList); $word = plit("\n", $wordList); foreach ($word as $currentWord) { $currentWord = rtrim($cirrentWord); if ((strLen($currentWord) > $boardData['width']) && (strLen($currentWord) > $boardData['height'])) { print "$ciurrentWord is too long for puzzle"; $itWorked = FALSE; }// конец if }//завершение цикла foreach return $itWorked; }//Завршение parseList function clerBoard() { global $board, $boradData; for ($row = 0; $row < $boardData['height']; $row++) { for ($col = 0; $col < $boardData["width"]; $col++) { $board[$row][$col] = "."; } } } function fillBoard() { //заполнить поле вызывая фуекцию addWord() global $word; $dirextion = array("N", "S", "E", "W"); $itWorked = TRUE; $counter = 0; $keepGoing = TRUE; while ($keepGoing) { $dir = rand(0, 3); $result = addWord($word[$counter], $direction[$dir]); if ($result == FALSE) { //print "failed to place $word[$counter]"; $keepGoing = FALSE; $itWorked = FALSE; } // завершение if $counter++; if ($counter >= count($word)) { $keepGoing = FALSE; } // завершение if } //завершение цикла while return $itWorked; } // завершение fillBoard function addWord($theWord, $dir) { //попытаемся добавить слово global $board, $$boardData; //удалим замыкающие символы $theWord = rtrim($theWord); $itWorked = TRUE; switch ($dir) { case "E"; $newCol = rand(0, $boardData["width"] - 1 - strlen($theWord)); $newRow = rand(0, $boardData["height"]-1); for ($i = 0; $i < strlen($theWord); $i++) { $boardLetter = $board[$newRow][$newCol + $i]; $wordLetter = substr($theWord,$i, 1); //проверяем свободно ли значение текущей ячейки поля if (($boardLetter == $wordLetter) || ($boardLetter == ".")) { $board[$newRow][$newCol + $i] = $wordLetter; } else { $itWorked = FALSE; }//завершение if }//завершение цикла for break; case"W"; $newCol = rand(strlen($theWord), $boardData["width"] -1); $newRow = rand(0, $boardData["height"] -1); //print "west:\tRow: $newRow\tCol: $newCol<br>\n"; for ($i = 0; $i < strlen($theWord); $i++) { //проверим можно ли продвинуться $boardLetter = $board[$newRow][$newCol - $i]; $wordLetter = subctr($theWord, $i, 1); if (($boardLetter == wordLetter) || ($boardLetter == ".")) { $board[$newRow][$newCol - $i] = $wordLetter; } else { $iWorked = FALSE; }//завершение if }//заврешение цикла for break; case "N"; $newCol = rand(0, $boardData["width"] -1); $newRow = rand(strlen($theWord), $boardData["height"]-1); for ($i = 0; $i < strlen($theWord); $i++ ) { $boardLetter = $board[$newRow][$newCol]; $wordLetter = substr($theWord, $i, 1); if (($boardLetter == $wordLetter) || ($boardLetter == ".")) { $board[$newRow - $i][$newCol] = $wordLetter; } else { $itWorked = FALSE; } //end for } //end for break; } //end switch } //end addWord function makeBoard($theBoard) { global $boardData; $puzzle = ""; $puzzle .="<table border = 0>\n"; for ($row = 0; $row < $boardData["height"]; $row++) { $puzzle .= " <td width = 15>{$theBoard[$row][$col]}</td>\n"; } $puzzle .= "</tr>\n"; return $puzzle; } function addFoiles() { global $board, $boardData; for ($row = 0; $row < $boardData["height"]; $row++) { for ($col = 0; $col < $boardData["width"]; $col++) { if ($board[$row][$col] == ".") { $newLetter = rand(65, 90); $board[$row][$col] = chr($newLetter); } } } } function printPuzzle() { global $puzzle, $word, $keyPuzle, $boardData; print <<<HERE <center> <h1>{$boardData["name"]}</h1> $puzzle <h3>Word list</h3> <table border = 0> HERE; foreach ($word as $theWord) { print "<tr><td>$theWord</td></tr>\n"; } print "</table>\n"; $puzzleName = $boardData["name"]; print <<<HERE <form action = "wordFindKey.php" method = "post"> <input type = "hidden" name = "key" value = "$keyPuzzle"> <input type = "hidden" name = "puzzleName" value = "$puzzleName" > <input type = "submit" value = "старт"> </form> </center> HERE; ?>