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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Ошибка в учебнике???
 
 автор: Gap   (20.03.2008 в 10:47)   письмо автору
 
 

http://www.softtime.ru/bookphp/gl11_1.php здесь учебный пример гостевой книги.

в файле index.php выдает ошибку.

Parse error: syntax error, unexpected '/' in S:\HOME\LOCALHOST\WWW\index.php on line 64

строчка
</td></tr>\n<tr><td colspan=2>\n";

Сам я еще не в состоянии найти ошибку, люди помогите пожалуйта

   
 
 автор: olejek   (20.03.2008 в 10:56)   письмо автору
 
   для: Gap   (20.03.2008 в 10:47)
 

А подсветку синтаксиса слабо сделать?

<?
 
print "</td><td align=right>".date("<b>d-m-Y</b> H - i, $date)."
    
</td></tr>\n<tr><td colspan=2>\n";
?>

Пропущена закрывающая кавычка
"<b>d-m-Y</b> H - i"

   
 
 автор: Gap   (21.03.2008 в 02:48)   письмо автору
 
   для: olejek   (20.03.2008 в 10:56)
 

>А подсветку синтаксиса слабо сделать?
да не шарю пока. спасибо.
Буду благодарен если разъясните.

   
 
 автор: cheops   (20.03.2008 в 11:50)   письмо автору
 
   для: Gap   (20.03.2008 в 10:47)
 

Спасибо, поправили.

   
 
 автор: Gap   (21.03.2008 в 02:55)   письмо автору
 
   для: cheops   (20.03.2008 в 11:50)
 

Почему, из за ковычки, php считает тег HTML ошибочным?

   
 
 автор: Atheist   (21.03.2008 в 03:05)   письмо автору
 
   для: Gap   (21.03.2008 в 02:55)
 

PHP вообще не считает что это какой-то тег. Он видит, что начинается строка (определяет по кавычке: "<b>d-m-Y</b> H - i
А вот дальше пропущена закрывающая кавычка, которая, собственно, и обозначает конец строки.
Для PHP строка продолжается: ... , $date)." - встретив вторую кавычку он думает, что строка закончена только тут.
Дальше он встречает (не обращаяя внимания на переводы строк и пробелы) символ "<", который в PHP является бинарным оператором. Это еще допустимо. Но вместо правого операнда он встречает какую-то хуйню: "/" (слеш). Это тоже бинарный оператор. Скажи, встреча двух бинарных операторов - это нормально? Нет, не нормально. Вот PHP и возмущен.

   
 
 автор: Gap   (21.03.2008 в 07:01)   письмо автору
 
   для: Atheist   (21.03.2008 в 03:05)
 

Спасибо, очень доходчиво и понятно

   
 
 автор: Gap   (21.03.2008 в 06:13)   письмо автору
 
   для: cheops   (20.03.2008 в 11:50)
 

открываю исправленный index, там пока все как надо(две ссылки "добавить запись"), жму на одну из них. переходим на addrec.php и вот тебе на
Notice: Undefined index: action in S:\HOME\LOCALHOST\WWW\addrec.php on line 3

$action = $HTTP_POST_VARS["action"]; 

это еще можно исправить,

@$action = $HTTP_POST_VARS["action"]; 

правильно?

Ниже этой ошибки идет вся форма,
в полях ввода имени, города, мэйла, ЮРЛ по умолчанию написанно "<br>", не пойму откуда теги эти взялись, <br> в коде всего один.

Еще ниже в поле сообщение
следующее содержание: <br />
<b>Notice</b>: Undefined variable: url in <b>S:\HOME\LOCALHOST\WWW\addrec.php</b> on line <b>142</b><br />
тут я тоже поставил "@" перед переменной "url", вроде получилось все.
остались только эти <br> в полях а так пока все красиво. испрвить даже не подозреваю как.
а еще неет красной звездочки перед полем "емэйл", а перед полем сообщение, она черная
это можно исправить добавив <font color=red><sup>*</sup> перед названием нужного поля ввода.

Если нажать на кнопку, не вводя ни каких сведений, появляется следующая строчка
Неверно введен е-mail.&nbsр Введите e-mail в виде softtime@softtime.ru, пробел тегом там я вно не нужен. я его просто удалил.
В поле сообщения появляется все тотже тег HTMLя <br/>

После ввода данных в index появляються следующие строки:

Notice: Undefined offset: 5 in S:\HOME\LOCALHOST\WWW\index.php on line 56
&nbsр;Nesh&nbsр;Moscow&nbsрNesh@brunduk.ru nesh.brunduk.ru    21-03-2008 14 - 39

Nesh from Moscow



Notice: Undefined offset: 5 in S:\HOME\LOCALHOST\WWW\index.php on line 56
&nbsр;Леха&nbsр;Верхний Порт&nbsрbrunduk@brunduk.ru     21-03-2008 14 - 36

Леха брундук, ищет брундучиху


56 строка индекса:

53   $url = trim($data[3]);
54   $msg = trim($data[4]);
55    /* поле, в которое администратор может добавить ответ */
56    $answer = trim($data[5]);
57    print "<table border=0 cellspacing=0 cellpadding=2 width=100%>
58     <tr bgcolor=#F0F0F0><td>&nbsр;";
59     print "<b>$name</b>&nbsр;";

и опять надо убрать пробелы

В итоге я не пойму как убрать эти <br/> и &nbsр;

   
 
 автор: cheops   (21.03.2008 в 11:08)   письмо автору
 
   для: Gap   (21.03.2008 в 06:13)
 

Код в учебнике является устарешим, лучше ориентироваться на готовый вариант гостевой книги, который расположен в разделе downloads.

   
 
 автор: Gap   (21.03.2008 в 13:49)   письмо автору
 
   для: cheops   (21.03.2008 в 11:08)
 

искать ошибки очень эффективно в обучении.

   
 
 автор: Gap   (24.03.2008 в 02:57)   письмо автору
 
   для: cheops   (21.03.2008 в 11:08)
 

Последовал Вашему совету, взял готовую гостевую книгу с раздела downloads, точно не помню ссылку, файл называеться guestbook.zip, те же ошибки: </br>, и не назначенные переменные.

   
 
 автор: olejek   (21.03.2008 в 11:13)   письмо автору
 
   для: Gap   (21.03.2008 в 06:13)
 

В файле php.ini есть раздел Error handling and logging.
Проверьте наличие там именно такой раскомментированной строки
error_reporting  =  E_ALL & ~E_NOTICE
- - отображать все ошибки кроме E_NOTICE.
E_NOTICE - незначительные исправимые ошибки, существующие для того, чтобы помочь программисту идентифицировать возможные дефекты кода.

   
 
 автор: Gap   (24.03.2008 в 02:58)   письмо автору
 
   для: olejek   (21.03.2008 в 11:13)
 

Слушай как ты был прав, все нормально стало. Спасибо.

   
Rambler's Top100
вверх

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