Время:
Новых сообщений: Нет
Вы на форуме дней
Ваша группа: Гость
Ваш IP: 3.139.235.177
Logical-Portal — молодежный портал со своей изюминкой, каждый сможет найти что-то интересное и полезное для себя, например наш форум общения с которым вам обязательно нужно ознакомиться.
  • Страница 1 из 1
  • 1
"Подписка на рассылку"
Сообщение оставлено 27.12.2011 в 13:08:10 | Сообщение #1


Описание данного скрипта:
В этом примере демонстрируется как с помощью php-скриптов создать проверочный код и с помощью него подписать/отписать пользователя на какую-либо рассылку. Подразумевается, что сама рассылка выполняется каким-то серверным скриптом или программой. Скрипт создает на странице форму с соответствующими полями и кодом подтверждения, пользователь выбирает действие, которое он хочет совершить (подписаться/отписаться), и вводит изображенный на картинке код. Если введенный код Cоответствует изображенному, форма отсылается и действие выполняется. Фактически, данный скрипт может использоваться более широко везде, где требуется код безопасности для подтверждения действий пользователя (например, активации/деактивации каких-то флагов для пользователя, установки/снятия каких-либо признаков и т.п). Данный скрипт подойдёт для любого сайта ,любой тематики, полезный скрипт.

Установка скрипта:
В шаблоне страницы:

Code
<?IF($USER_ID$)?>     
     <div align="center">     
     <p>     
     <b>Данный пример демонстрирует использование скрипта для подписки/отписки на какую-либо рассылку для текущего пользователя с использованием кода безопасности</b>     
     </p>     
     </div>     
     <hr>     
     <?$PHPCODE$("http://phpexample.ucoz.net/php/example000/example000.php?uid=",$USER_ID$)?>     
     <?ELSE?>     
     <div id="phpdiv">     
     <p>Вы не зарегистрированны. Пожалуйста, зарегистрируйтесь или войдите своей учетной записью</p>     
     </div>     
     <?ENDIF?>     

     <?php     
     session_start();     
     if(count($_POST)>0){     
     $___notjson=1;     
     if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){     
     $lines = file('subscr.dat');     
     if ($_POST['atype'])     
     {     
     $status_ok=0;     
     foreach ($lines as $line_num => $line) {     
     if (trim($line)==$_POST['userid'])     
     {     
     unset($lines[$line_num]);     
     file_put_contents('subscr.dat', $lines);     
     $status_ok=1;     
     break;     
     }     
     }     
     if ($status_ok) echo "$('#captcha_result').html('Вы отписались от рассылки')";     
     else echo "$('#captcha_result').html('Вы не были подписаны на рассылку')";     
     }     
     else     
     {     
     $status_err=0;     
     foreach ($lines as $line_num => $line) {     
     if (trim($line)==$_POST['userid'])     
     {     
     $status_err=1;     
     break;     
     }     
     }     
     if ($status_err) echo "$('#captcha_result').html('Вы уже подписаны на рассылку')";     
     else {     
     if (file_put_contents('subscr.dat', $_POST['userid']."\n", FILE_APPEND)==FALSE) echo "$('#captcha_result').html('Ошибка, попробуйте позже')";     
     echo "$('#captcha_result').html('Вы подписались на рассылку')";     
     }     
     }     
     }else{     
     echo "$('#captcha_result').html('Неверный код безопасности')";     
     }     
     exit;     
     }     
     unset($_SESSION['captcha_keystring']);     
     ?>     

     <p>Рассылка новостей</p>     
     <form action="/php/example000/example000.php" method="post" onsubmit="_uPostForm(this,{dataType:'script'});return false;" onerror="alert('Error');">     
     <p><input type="hidden" name="userid" value="<?echo $_GET['uid']?>"></p>     
     <p><input type="radio" name="atype" value="0" CHECKED/>Подписаться</p>     
     <p><input type="radio" name="atype" value="1" />Отписаться</p>     
     <p><img src="/php/example000/index.php?<?php echo session_name()?>=<?php echo session_id()?>"></p>     
     <p><input type="text" name="keystring"></p>     
     <p><input type="submit" value="Ok"></p>     
     </form>     
     <div id='captcha_result'></div>


 Сообщение отредактировал NoVi4ioK - Вторник, 27.12.2011, 13:09:13
 
   
  • Страница 1 из 1
  • 1
Поиск:
 
Графика от: Megas, GraFOS | Дизайн сверстал E.A.
Хостинг от uCoz
Яндекс.Метрика