Есть пример кода из книги php для начинающих (наконец то ИГА в технаре сдал и диплом получил) Так вот, не пойму в чем ошибка жалуется на синтаксическую ошибку в 28 строке. PHP: <?php print verse(1); print chorus(); print verse(2); print chorus(); print verse(3); print chorus(); print verse(4); print chorus(); function verse($stanza){ switch ($stanza) { case 1; $place = "thumb"; break; case 2; $place = "choe"; break; case 3; $place = "knee"; break; case 4; $place = "door"; break; default; $place = "БЛА БЛА БЛА"; } // the end switch $output = <<<HERE ТИПА ТОТ ЖЕ ПЕРВЫЙ КУПЛЕТ HERE; return $output; } // the end verse function chorus(){ $output = <<<HERE ТИПА ПРИПЕВ HERE; return $output; } //the end chorus ?>
Не пиши <<<, используй простую строку: PHP: <? $output = 'ТИПА ТОТ ЖЕ ПЕРВЫЙ КУПЛЕТ'; $output = 'ТИПА ПРИПЕВ'; Строка с <<< (не помню названия этой конструкции) редко когда используется. А когда используется надо думать как её не использовать. В будущем благодаря этой конструкции из кода сделаешь кашу. И после case expr должен стоять знак двоеточия ), а не точки с запятой (: PHP: <? case 1: $place = "thumb"; break;
http://php.net - действительно лучше и удобнее. Но книжки откидывать вряд ли нужно: в интернете много статей разного качества. На этом форуме где-то было собрание сочинений на тему чё бы почитать для обучения. Посмотри, может найдёшь что-то полезное. P.S. Ещё можно порыться на архивах вроде woweb.ru. Там много скриптов не самых сложных и по ним можно понять синтаксис, увидеть новые конструкции и по-тихоньку запомнить Nое кол-во полезных функций.
Heredoc лучше использовать, когда нужно присвоить большой кусок хтмл. А то запаришься кавычки экранировать...
кстати книжка называется PHP и MySQL для начинающих. Плюс в ней в том что в каждой главе есть от трех заданий на разработку так называемых мини программ. короче домашнее задание по которым можно проверить как ты усвоил материал.
кстати такие примеры вроде то же есть. но там из формы задается значение переменной. что то вроде генератора страницы.
Короче есть два кода на PHP и HTML. HTML: <html> <head> <title></title> </head> <body> Введите параметры для страницы <form METHOD="POST" ACTION="1.php"> Введите заголовок страницы:<br><input type = "text" name = "title"><br> задайте цвет фона:<br> <select name = "foncolor"> <option value = "red">Красный</option> <option value = "yellow">Желтый</option> <option value = "black">черный</option> <option value = "green">зеленый</option> <option value = "white">белый</option> </select><br> задайте цвет шрифта: <br><select name = "fontcolor"> <option value = "red">Красный</option> <option value = "yellow">Желтый</option> <option value = "black">черный</option> <option value = "green">зеленый</option> <option value = "white">белый</option> </select><br> Введите текст:<br> <textarea rows = "5" name = "text1" whith = "100" hight = "100"></textarea> <input type = submit value = "пошли"> </form> </body> </html> и PHP: <?php $foncolor = $_POST['foncolor']; $fontcolor = $_POST ['fontcolor']; $title = $_POST['title']; $text1 = $_POST['text1']; $theStyle = "background: $foncolor; font-size: 19pt; color: $fontcolor"; print "<div style = $theStyle>"; print $title; print "<br>"; print $text1; print "</div>"; ?> из формы значения не передаются в CSS стиль. PS: $_REQUEST заменил на $_POST. с цветом фона разобрался остался цвет шрифта
Просто реквест - это и сессии, и куки и гет и пост вместе, на сколько я знаю и, следовательно, снижается безопасность и глючность (например одинаковые переменные в куки и пересылке пост) )))
такую то же начинал читать))) много лишней инфы в ней. поэтому после прочтения 5 страниц. сразу с компа удалил
PHP: <html> <head> <style rype = "text/css"> body { background: green; color: tan; } </style> </head> <body> <center> <h1>Poker Dice</h1> <form> <?php $die = $_POST['die']; $secondRoll = $_POST['secondRoll']; $keepIt = $_POST['keepIt']; //смотрим впервые ли запущена программа if (empty($cash)){ $cash = 100; } //the end rollDice(); if ($secondRoll == TRUE){ print "<h2>Программа запущена в первые</h2>\n"; $seconRoll == False; evaluate(); } else { print "<h2>программа запущена уже была</h2>\n"; $secondRoll == true; } // the end printStuff(); function rollDice(){ global $die, $secondRoll, $keepIt; print "<table border = 1><td><tr>"; for ($i = 0; $i < 5; $i++){ if ($keepIt[$i] = ""){ $die[$i] = rand(1,6); }else{ $die[$i] = $keepIt[$i]; } // the end $theFile = $die[$i]; print <<<HERE <td> $theFile HERE; if($secondRoll == FALSE){ print <<<HERE <input type = "checkbox" name = "keepIt[$i]" value = $die[$i]> </td> HERE; } // завершение if } //завершение цикла for //вывести кнопку submit print <<<HERE </tr></td> <tr><td colspan = "5"> <center> <input type = "submit" value = "roll again"> </center> </td> </tr> </table> HERE; // завершение функции rollDice function evalution(){ global $die, $cash; // обнуляем $pyaof = 0; // вычитаем $cash -=2; //считаем кости $numValue = array(6); for ($theVal = 1; $theVal <=6; $theVal++){ for ($dieNum = 0; $dieNum < 5; $dieNum++){ if ($die[$dieNum] == $theVal){ $numVals[$theVal]++; } // завершение if } // завершение цикла for для dieNum } // завершение цикла for для theVal // выводим результат //for ($i = 1; $i <= 6; $i++){ //print "$i"; $numVals[$i]; //} //завершение цикла for $numPairs = 0; $NumThrees = 0; $numFours = 0; $numFives = 0; for ($i= 1; $i <= 6; $i++){ switch ($numVals[$i]){ case 2: $numPairs++; break; case 3: $numThrees++; break; case 4: $numFours++; break; case 5: $nuFives++; break; } //завершение switch } //завершение цикла for //проверяем есть ли две пары if ($numThrees == 2){ print "bla bla bla<br\n>"; $payoff = 1; } if ($numThrees == 1){ if ($numPairs == 1){ print "chto to tam eche"; $payof = 5; }else{ print "blu blu blu"; $spayoff = 2; } // завершение if для пары } //заверщение if для трех if ($numFours == 1){ print "ugu"; $payoff = 5; } //завершение if if ($numFives == 1){ print "You got five of a kind<br>\n"; }//завершение if //тщем стрит if (($numVals[1]) == 1) && ($numVals[2]) == 1) && ($numVals[3]) == 1) && ($numVals[4]) == 1) && ($numVals[5]) == 1) print "You have a straight<br>\n"; $payoff = 10; } if (($numVals[2]) == 1) && ($numVals[3]) == 1) && ($numVals[4]) == 1) && ($numVals[5]) == 1) && ($numVals[6]) == 1) print "You have a straight<br>\n"; $payoff = 10; } print "you bet 2<br>\n"; print "Payoff is $payoff<br>\n"; print += $payoff; } function printStuff(){ global $cash, $secondRoll; print "Cash: $cash"; print <<<HERE <input type = "hidden" name = "Secondroll" value = "$secondroll"> <input type = "hidden" name = "cash" value = "$cash"> HERE; } ?> </body> </html> а вот почему то результат((( HELP
Строки 133-137 (и кстати 142-146) PHP: <?php if (($numVals[1]) == 1) && ($numVals[2]) == 1) && ($numVals[3]) == 1) && ($numVals[4]) == 1) && ($numVals[5]) == 1)?> Открывающих скобок - 6 Закрывающих скобок - 10 Думаю должно быть: PHP: <?php if (($numVals[1] == 1) && ($numVals[2] == 1) && ($numVals[3] == 1) && ($numVals[4] == 1) && ($numVals[5] == 1))?>