Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Не получается подписка на новости
Владимир55  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 916
Пользователь №: 27293
На форуме: 5 лет, 7 месяцев, 27 дней
Карма: -1




Нашел в сети нашелся типовой скрипт, демо, который позволяет сделать подписку на новости.

Алгоритм такой: если страницу прокрутить вниз, то всплывает форма подписки. Вот код (сорри, что длинный контекст, но уж как в исходнике):

<!DOCTYPE html> 
<html lang="en" class="no-js demo1">
<head>
<meta
charset="UTF-8" />
<meta
name="robots" content="noindex,nofollow" />
<meta
name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Настраиваемые всплывающие окна подписки</title>
<script
type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<link
rel="stylesheet" type="text/css" href="css/default.css" />
<link
rel="stylesheet" type="text/css" href="css/subscribe-better.css" />
<script
type="text/javascript" src="js/jquery.subscribe-better.js"></script>

<link
rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>

<div
class="container">
<div
class="header">
<h1>
jQuery Подписка: Настройки По Умолчанию</h1>
</div>


<div
class="main">
<div
class="page_container">

<div
class="subscribe-me">
<h2>
Подписка на обновления</h2>
<a
href="#close" class="sb-close-btn">x</a>
<p>
Получайте самые последние новости на свой e-mail</p>
<form>
<input
type="email" placeholder="Email адрес">
<input
type="submit" value="Получать">
</form>
</div>

<h1>
Прокрутите страницу вниз</h1>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>
"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
</div>
</div>
</div>
<script
type="text/javascript">
$(document).ready( function() {
$(".subscribe-me").subscribeBetter();
});
</script>
</body>
</html>


К сожалению, тут обработчик даже не упоминается, и куда его подключать - не понятно.

Я внес изменения в форму:
 <form method="POST" action="result.php"> 
<input
type="text" name="name" placeholder="Ваше имя">
<input
type="email" name="email" placeholder="Email адрес">
<input
type="submit" value="Получать">
</form>


А в обработчике result.php написал для контроля создание текстового файла:

    $name  = $_POST['name']; 
$email = $_POST['email'];

$date = date("H-i-s" );
file_put_contents($date . ".txt", $name . " " . $email);

echo "name $name - email $email ";



Не работает. По клику на запись просто переходит на страницу обработчика!

Как исправить это дело?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1355
Пользователь №: 28976
На форуме: 5 лет, 4 месяца, 7 дней
Карма: 77




// открыть файл, записать в конец файла данные, и закрыть
$handle = fopen("mail.txt", "a+");
fwrite ($handle, $name . " " . $email);
fclose($handle);

рассылку делать по это списку, а лучше записать в базу данных.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 916
Пользователь №: 27293
На форуме: 5 лет, 7 месяцев, 27 дней
Карма: -1




Спасибо, но проблема вовсе не в том, как записать данные. Функцию file_put_contents я ввел лишь для того, чтобы настроить скрипт (контролировать его работу).

Проблема на уровне javascript - нужно вызывать обработчик, оставаясь на той же странице.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Ну ты про Ajax не слышал что-ли никогда?
На эту тему есть куча туториалов. Например, http://dontforget.pro/javascript/primer-aj...u-jquery-i-php/
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 916
Пользователь №: 27293
На форуме: 5 лет, 7 месяцев, 27 дней
Карма: -1




Цитата
На эту тему есть куча туториалов

Спасибо за ответ, но тут такой нюанс.

Я пытался сделать скрипт самостоятельно, с нуля.
Возникли проблемы, и я попросил помощи на другом форуме.
А там не говорят: "Ну ты про Ajax не слышал что-ли никогда?
На эту тему есть куча туториалов"

И дали ссылку на тот, с которым я сейчас мучаюсь.

Так можно по цепочке ходить бесконечно.

За Вашу ссылку тоже спасибо, но там совсем другой алгоритм, который мне не подходит.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
[x] Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата
Знaчит, aлгoритм слeдующий: зaпoлняeм фoрму, eё oтпрaвку пeрeхвaтывaeм jQuery скриптoм, прoвeряeм и oбрaбaтывaeм дaнныe, oтпрaвляeм бeз пeрeзaгрузки стрaницы в oбрaбoтчик, тaм всe eщe рaз прoвeряeм, oтпрaвляeм нa email, вoзврaщaeм oтвeт, принимaeм eгo и пишeм, чтo всe oк(или нe oк), прoфит.

Не подходит говоришь?

Ну ладно, так уж и быть, проведу тебя за ручку.

Html
<!DOCTYPE html>
<html lang="en" class="no-js demo1">
<head>
<meta charset="UTF-8" />
<meta name="robots" content="noindex,nofollow" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Настраиваемые всплывающие окна подписки</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<link rel="stylesheet" type="text/css" href="css/default.css" />
<link rel="stylesheet" type="text/css" href="css/subscribe-better.css" />
<script type="text/javascript" src="js/jquery.subscribe-better.js"></script>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<div class="container">
<div class="header">
<h1>jQuery Подписка: Настройки По Умолчанию</h1>
</div>

<div class="main">
<div class="page_container">

<div class="subscribe-me">
<h2>Подписка на обновления</h2>
<a href="#close" class="sb-close-btn">x</a>
<p>Получайте самые последние новости на свой e-mail</p>
<form id="subscribe">
<input type="text" name="name" placeholder="Ваше имя" required>
<input type="email" name="email" placeholder="Email адрес" required>
<input type="submit" value="Получать">
</form>
</div>

<h1>Прокрутите страницу вниз</h1>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
<p>"Lorem ipsum dolor sit amet, consectetur adipisicing elit"</p>
</div>
</div>
</div>
<script type="text/javascript">
$(document).ready( function() {
$(".subscribe-me").subscribeBetter();

$('#subscribe').submit(function(event) {
var form = $(this);
$.ajax({
type: 'POST',
url: 'subscribe.1php',
data: form.serialize(),
success: function(data) {
alert(data);
$('.sb-close-btn').click();
},
error: function(xhr, ajaxOptions, thrownError) {
alert('Something went wrong');
console.log(thrownError);
}
});

return false;
});
});
</script>
</body>
</html>


PHP
$name = $_POST['name'];
$email = $_POST['email'];

$date = date("H-i-s" );
file_put_contents($date . ".txt", $name . " " . $email);

echo "Thank you! You have successfully subscribed to the newsletter.";
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 916
Пользователь №: 27293
На форуме: 5 лет, 7 месяцев, 27 дней
Карма: -1




Ура, заработало!

Большое спасибо!
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Тока ж тебе еще нужно научить эту формочку не показываться пользователям, которые уже подписались. Ну надеюсь как куку установить найдешь сам.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 916
Пользователь №: 27293
На форуме: 5 лет, 7 месяцев, 27 дней
Карма: -1




Да, алгоритм работы с куками я себе представляю.

Спасибо ещё раз!
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса