Теперь все скрипты доступны в обновленном формате в нашем магазине USCRIPT.PRO

Перейти в магазин

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

В шаблоне страницы:

<?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 скрипт примера:

<?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>


PHP скрипт капчи: http://www.captcha.ru/

Добавлен 06.12.2010
комментарии:
saibat12345 Спам [Материал] 18.11.2015 10:55
saibat12345 Кстати, если кому нужен реально качественный сервис для рассылки, могу порекомендовать такой вот хороший http://StandartSend.ru Сам им пользуюсь и пока что очень и очень доволен)
Chicago Спам [Материал] 09.09.2014 14:41
Chicago А куда ставить PHP скрипт?
ДухLESS [Материал] 10.09.2014 01:03
ДухLESS Вам необходимо скачать архив с файлами и загрузить их при помощи FTP на PHP-сервер. Информация о работе с PHP: http://phpexample.ucoz.net/manual/ .
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]