Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Необходимо добавить подписку при регистрации

29.07.2010, 17:32
Гость
Гость

Здравствуйте. Нужно сделать чекбокс "Подписаться на рассылку новостей" в форме регистрации.

Я добавляю след. код в "Действие после добавления объекта"
// Подписывать вновь зарегистрированных пользователей сайта на рассылку новостей
if(isset($_POST['isSubscribed'])) {
if($_POST['isSubscribed'] == 'on') {
mysql_query("INSERT INTO Subscriber (User_ID, Status, Sub_Class_ID) VALUES ($f_RowID,1,60)");
mysql_query("INSERT INTO Subscriber (User_ID, Status, Sub_Class_ID) VALUES ($f_RowID,1,61)");
}
}
Но это естественно не работает. Подскажите пожалуйста как это можно реализовать.
30.07.2010, 08:45
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

А что конкретно не работает?

логика верная, единственное в действии после добавления у вас скорее всего $f_RowID будет недоступно, вместо него нужно использовать $message или $msgID или $db->insert_id
Код:
if(isset($_POST['isSubscribed']) && $_POST['isSubscribed'] == 'on') {
$db->query("INSERT INTO Subscriber (User_ID, Status, Sub_Class_ID) VALUES ($message,1,60)");
$db->query("INSERT INTO Subscriber (User_ID, Status, Sub_Class_ID) VALUES ($message,1,61)");
}
30.07.2010, 11:54
Гость
Гость

Спасибо Андрей. Помогло. Подставил $msgID. Только вот мне одно не понятно, я отдебажил $msgID, $message и $db->insert_id. $msgID ровнялась $message, а $db->insert_id(было другое значение) нет, хотя в файле add.php такой код:
$msgID = $db->insert_id;
30.07.2010, 12:08
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

$db->insert_id
это id последней записи вставленной в mysql
198 196 2010-07-30 12:08:14 10615
Описание проекта