Jump to content

LunatiK

Expert
  • Posts

    1,730
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by LunatiK

  1. Не надо благодарностей, как-будто вы не понимаете что я вам делаю «медвежью услугу» <?php /* Template Name: contact.php */ session_start();//!!! изменения $tmp1 = rand(0, 20); $tmp2 = rand(0, 20); if(!isset($_SESSION['cp_answer'])) { //!!! Изменения $_SESSION['cp_question'] = $tmp1.' + '.$tmp2.' = ?'; //!!! Изменения $_SESSION['cp_answer'] = $tmp1 + $tmp2; //!!! Изменения } //!!! Изменения if (empty($_POST)) { //!!! Изменения $_SESSION['cp_question'] = $tmp1.' + '.$tmp2.' = ?'; //!!! Изменения $_SESSION['cp_answer'] = $tmp1 + $tmp2; //!!! Изменения } //!!! Изменения ?> <?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>"><?php the_title(); ?></a></h2><br /> <?php //validate email adress function is_valid_email($email) { return (eregi ("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$", $email)); } function is_valid_user($answer) { global $_SESSION;//!!! изменения if ($answer == $_SESSION['cp_answer']) { return true; } else { return false;}//!!! изменения } //clean up text function clean($text) { return stripslashes($text); } //encode special chars (in name and subject) function encodeMailHeader ($string, $charset = 'UTF-8') { return sprintf ('=?%s?B?%s?=', strtoupper ($charset),base64_encode ($string)); } $cp_name = (!empty($_POST['cp_name'])) ? $_POST['cp_name'] : ""; $cp_email = (!empty($_POST['cp_email'])) ? $_POST['cp_email'] : ""; $cp_url = (!empty($_POST['cp_url'])) ? $_POST['cp_url'] : ""; $cp_ans = (!empty($_POST['cp_ans'])) ? $_POST['cp_ans'] : ""; $cp_message = (!empty($_POST['cp_message'])) ? $_POST['cp_message'] : ""; $cp_message = clean($cp_message); $error_msg = ""; $send = 0; if (!empty($_POST['submit'])) { $send = 1; if (empty($cp_name) || empty($cp_email) || empty($cp_message) || empty($cp_ans)) { $error_msg.= "<p style='color:#a00'><strong>Пожалуйста, заполните все необходимые поля.</strong></p>\n"; $send = 0; } if (!is_valid_email($cp_email)) { $error_msg.= "<p style='color:#a00'><strong>Не удалось подтвердить Ваш адрес электронной почты.</strong></p>\n"; $send = 0; } if (!is_valid_user($cp_ans)) { $error_msg.= "<p style='color:#a00'><strong>Неправильный ответ на вопрос Антиспама.</strong></p>\n"; $send = 0; $_SESSION['cp_question'] = $tmp1.' + '.$tmp2.' = ?'; //!!! Изменения $_SESSION['cp_answer'] = $tmp1 + $tmp2; //!!! Изменения } } if (!$send) { ?> <?php echo $error_msg;?> <form method="post" action="" id="contactform"> <p class="fieldwrap"><label for="cp_name"><span class="required">*</span> Ваше имя</label> <input type="text" name="cp_name" id="cp_name" value="" /></p> <p class="fieldwrap"><label for="cp_email"><span class="required">*</span> Email</label> <input type="text" name="cp_email" id="cp_email" value="" /></p> <p class="fieldwrap"><label for="cp_url"> Ваш сайт</label> <input type="text" name="cp_url" id="cp_url" value="" /></p> <p class="fieldwrap"><label for="fm_verify"><span class="required">*</span>Антиспам: <?php echo $_SESSION['cp_question'];//!!! Изменения ?></label> <input class="cpverify" name="cp_ans" id="cp_verify" type="text" value="" /> <p class="fieldwrap"><label for="cp_message"><span class="required">*</span> Ваше cообщение</label> <textarea class="cptextarea" name="cp_message" cols="66" rows="10" id="cp_message"></textarea></p> <p><input name="MAX_FILE_SIZE" value="1000000" type="hidden"></p> <input type="submit" id="submit" name="submit" value="Отправить сообщение" /> </form> <?php } else { $displayName_array = explode(" ",$cp_name); $displayName = htmlentities(utf8_decode($displayName_array[0])); $header = "MIME-Version: 1.0\n"; $header .= "Content-Type: text/plain; charset=\"utf-8\"\n"; $header .= "From:" . encodeMailHeader($cp_name) . "<" . $cp_email . ">\n"; $email_subject = "[" . get_settings('blogname') . "] " . encodeMailHeader($cp_name); $email_text = "Пишет: " . $cp_name . "\n" . "Email: " . $cp_email . "\n" . "Url: " . $cp_url . "\n\n" . $cp_message; if (@mail(get_settings('admin_email'), $email_subject, $email_text, $header)) { echo "<br /><p>Спасибо за ваше письмо, " . $displayName . ".</p>"; } } ?> <?php endwhile; ?><?php endif; ?> P.S. Все предупреждения остаются в силе
  2. Нет не заколдованная, это я накосячил ... время останется подправлю...
  3. На работе вот так
  4. На ваш страх и риск, без каких либо гарантий и претензий, ибо всё на скорую руку, да и в пятницу вечером *Удалил косчный скрипт ... Учите пхп или нанимайте постоянного человека, такие бесплатные чтучки могут вам выйти дырой в вашем сайте
  5. Очень даже видно, с $cp_answer кусок я отобразил выше, а $answer из формы: <p class="fieldwrap"><label for="fm_verify"><span class="required">*</span>Антиспам: <?php echo $cp_question; ?></label> <input class="cpverify" name="cp_ans" id="cp_verify" type="text" value="" /> попадает в обработчик: $cp_ans = (!empty($_POST['cp_ans'])) ? $_POST['cp_ans'] : ""; //далее... if (!is_valid_user($cp_ans)) { $error_msg.= "<p style='color:#a00'><strong>Неправильный ответ на вопрос Антиспама.</strong></p>\n"; $send = 0; } // a функция: function is_valid_user($answer) { global $cp_answer; if ($answer == $cp_answer) { return true; } else { return false;} } А вот тут вы правы
  6. Ошибка в том, что: $tmp1 = rand(0, 20); $tmp2 = rand(0, 20); $cp_question = $tmp1.' + '.$tmp2.' = ?'; $cp_answer = $tmp1 + $tmp2; при каждом обращении к странице у вас генерируется новый вопрос ответ, т.е. вы получили форму с вопросом 2+2 =? отвечаете 4 , 4 отсылается на страницу с проверкой а там делается 2 + 3 = 5, и уже 5 сравнивается с ответом 4 , конечно он не будет равен, должно случится чудо чтоб подряд два раз по рендому выпали одинаковые два числа
  7. LunatiK

    Сортировка

    select `text` from table where `text` REGEXP "^[0-9]{1} " order by `text` ASC но собственно это уже не к чему ибо вам уже предложили простой и рабочий вариант
  8. LunatiK

    Сортировка

    Сделать выборку по одноразрыдной цифре упорядочить Сделать выборку по двух-разрядной цифре упорядочить и т.д. сколько разрядов, но в часах больше двух вроде не бывает
  9. Lang Rus Файлы из архива кинуть в папку Lang в директории с программой (пример: "c:\Program Files\PSPad editor\Lang")
  10. Шаблон не интересный, поэтому углубляться в тонкости тоже не вижу смысла. Облако тегов как-то у вас не отверсталось, доделали б ...
  11. Вот такие пути к картинкам: file:///C:/Users/Admin/Desktop/gam/images.png - это вы бросьте !!! Кроме PNG32 ещё существует PNG8, GIF и JPG. Неоправданно использовано изображение в шапке с полу-прозрачностью, там сгодиться и обычный jpeg.
  12. Pspad: Settings->Program Settings...->Language->Russian Notepad++: Settings->Preferences->General->Localization->Русский
  13. А если будет ссылаться на несуществующую статичную страницу? Это надо все возможные варианты предугадывать и писать под них правила модреврайт ?
  14. Давайте файлы сюда, гадать без них безсмысленно
  15. У меня уже три года работает компьютер. Выключался только при отсутствии электричества ну и на короткие технические перерывы. Работает постоянно, выключается только монитор, торрент на скачку и раздачу работает не менее 50% времени. Харды пока живы 400, 500, 1000x2, 1500 Гб все WD
  16. Вобщем-то, никто. А на допустимость(правильность/неправильность, существование) адреса как проверять?
  17. Я сверстал ваш бланк, если хотите его получить, сказать спасибо и перечислить 500WMR - обращайтесь. Единственное что и ТЗ: «При выводе на принтер печать организации должна выглядеть как оттиск настоящей, это очень важно!», - не от меня зависит, а от принтера. P.S. Размер печати 40мм мерил штангенциркулем, он отличается от ваших экспериментальных данных.
  18. Если никто не согласится, то я могу вечерком поковырять ваш бланк. Если что - аська в профиле.
  19. Для чёткости лучше выкладывать оригинал, а не результат экспорта. Чтоб потом переделывать не пришлось, ну и печать отдельно
  20. Ну вот как-то сама фраза опровергает сказанное
  21. А вдруг кто что новенькое для себя (и других открыл) А вообще такого рода темы можно и прикреплять вверху
  22. Меня тоже всегда умиляет это выражение когда его пихают везде где даже это не возможно, оно в сознании людей уже трансформировалось и представляет значение «законченности и полной работоспособности без потребности что-то ещё делать» Для сайта это означает: дизайн, вёрстка, возможно натягивание и настраивание Cms, наполнение контентом сайта в интернете, т.е. это тот минимум при котором на сайт можно зайти и понять что он не в стадии разработки. (раскрутка и регистрация в поисковиках не входит в этот набор, но может являться бесплатной(или платной) дополнительной услугой)
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy