| Новости | FAQ | Авторы | Документация | В действии | Библиотека | 
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум | 
Анубис 11.11.2003 10:20
Конечно, понимаю, что вещь не такая уж и сложная, но потратил на это весь день, а вечером решил еще раз разбраться с тиантами и антиантами. В итоге пришел к выводу, что в коде есть ошибка, но найти её не могу. Еще раз скажу, какова задача.## в файле gbook.p создаю класс
@CLASS
gbook
@load[]
## создание тестовой таблицы сообщений из форума
$messages[^table::create{author	email	date	body
Пушкин	pushkin@mail.ru	2003-11-01	О сколько нам открытий чудных, готовит <b>просвещенья</b> дух
Некрасов	nekrasov@hotmailcom	2003-10-11	Великий русский поэт
Гагарин	gagarin@rambler.ru	2002-03-04	Первый космонавт
}]
@show_messages[] 
^if($messages){ 
   ^messages.menu{ 
      <table width="100%"> 
         <tr> 
         <td align="left"><b>$messages.author 
            ^if(def $messages.email){ 
               $messages.email 
            }{ 
               Нет электронного адреса 
            }</b> 
         </td> 
         <td align="right">$messages.date</td> 
         </tr> 
      </table> 
      <table width="100%"> 
## вношу в сообщение форума «энтер» 
	  $repl[^table::create{from	to
открытий	<br>}]
## печатаем преобразованный текст
      <tr>
         <td>^messages.body.replace[$repl]</td>
      </tr> 
      </table> 
   }[<table width="100%" border="0" bgcolor="000000" cellspacing="0">  
        <tr><td> ^;</td></tr>
   </table>] 
}{ 
   Гостевая книга пуста. 
} 
@show_form[] 
<hr> 
<br> 
$date[^date::now[]] 
<center> 
<form method="POST"> 
<p> 
Author<sup>*</sup><input name="author"><br> 
E-mail  <input name="email"> 
<br>text<br><textarea cols="50" name="text" rows="5"></textarea> 
</p> 
<p> 
<input type="submit" value="Send" name="post">    
<input type="reset" value="Cancel"> 
</p> 
</form> 
</center> 
@test_and_post_message[] 
^if(def $form:post){ 
   ^if(def $form:author){ 
      ^MAIN:dbconnect{ 
         ^void:sql{insert into gbook 
            (author, email, date, body) 
         values ( 
            '$form:author', 
            '$form:email', 
            '${date.year}-${date.month}-${date.day}', 
            '$form:text' 
         )} 
      } 
      $response:location[$request:uri] 
   }{ 
      <center>Поле автор обязательно для заполнения</center> 
   } 
}А вызываю класс из index.html таким образом @USE gbook.p ######### $gb[^gbook::load[]] ^gb.show_messages[] ^gb.show_form[] ^gb.test_and_post_message[]Получаем вот такой результат:
Пушкин pushkin@mail.ru 2003-11-01 О сколько нам чудных, готовит просвещенья (выделенно жирным) дух Некрасов nekrasov@hotmail.com 2003-10-11 Великий русский поэт Гагарин gagarin@rambler.ru 2002-03-04 Первый космонавтТ.е. поскольку и перевод строки в первом сообщении получился и слово «просвещенье» жирным шрифтом, то это не то, что мне нужно. Нужно, чтобы остался перевод строки, а слово «просвещенье» вывелось без форматирования.