Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Василий М. 11.05.2015 12:03
Вот почищенные для наглядности куски кода из auto.p.@capture[] # генерим два числа: небольшое двузначное и однозначное. $cx(^math:random(20)) $cx($cx + 10) $cy(^math:random(9)) $cy($cy+1) # бросаем монету $co(^math:random(2)) # и по результату предлагаем либо сложить два числа, либо вычесть маленькое из большого. ^if($co eq 0){Пожалуйста, введите <b>результат сложения $cx и $cy}{Пожалуйста, <b>вычтите $cy из $cx}^:</b># считаем должный результат для себя.
@mainarea[] <form method="post"> <textarea name="question">^if(def $cookie:ctext){$cookie:ctext}</textarea> <p>^capture[] <input type="text" size="2" name="cres">.</p> <input name="go" type="submit" value="Спросить"> </form>Далее работаем:
#если написано и нажато ^if(def $form:question && def $form:go){ # если введенный результат капчи соответствует нужному ^if($form:cres eq $cr){ # то отправляем в базу и пишем в почту ^connect[mysql://login:pass@db.provider.ru/mydb?charset=cp1251]{ ^void:sql{ INSERT INTO `counter`.`questionaire` ( `no` , `date` , `question` , `answer` ) VALUES ( NULL , NULL , '$form:question', NULL)^; }} ^mail:send[ $.from[Сайт <site@mydomain.ru>] $.to[Вася <mail@mydomain.ru>] $.subject[Новый вопрос на сайте] $.text[$form:question] ] # ну и стираем кук с вопросом, подставляемым в форму $cookie:ctext[] # обновляем страницу. $response:location[http://mydomain.ru/discuss/] # если же введён ложный результат }{ # сохраняем пользовательский текст для него же (после релоуда подставить в текстарею) $cookie:ctext[$form:question] # и пишем мне, чё там произошло. Что надо было сложить-вычесть, что получить и что вместо этого было вбито. ^mail:send[ $.from[Сайт <site@mydomain.ru>] $.to[Вася <mail@mydomain.ru>] $.subject[Не заданный вопрос на сайте] $.text[Предлагалось ^if($co eq 0){сложить $cx и $cy, введен результат $form:cres вместо $cr}{вычесть $cy из $cx, введен результат $form:cres вместо $cr}^; $form:question] ] # перезагружаем страницу $response:location[http://mydomain.ru/discuss/] } }В результате.