Форум русской поддержки Joomla!® CMS
08.12.2016, 07:59:51 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

ID пользователя (авторизованного или нет) из формы в БД

 (Прочитано 107 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Skelvin
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 30



« : 29.04.2016, 14:50:11 »

Исходные данные:
в материале отображается модуль с HTML формой с кнопкой Отправить.
форма обрабатывается отдельным файлом php где данные записываются в БД
Код:
$description = $_POST['description'];
mysql_query("INSERT INTO `table` (`description`,`user_id`) VALUES('{$description}','{$user_id}')");
Нужно записать в БД id зарегистрированного пользователя или какое по умолчанию для гостей id?

испробованы все попытки что описаны на форуме но ничего не работает, последняя версия попытки такая:
в index.php шаблона добавлены строки, эти строки кидались и в файл обработчик формы - Ошибка 500
Код:
$user = &JFactory::getUser();
$user_id = $user->id;

а в форму
Код:
<input type="text" name="user_id" value="'.$user_id.'">

не сработало.

Еще вопрос в тему тип поля в БД MySQL для id INT? Я не ошибаюсь?

ссылки на похожие темы можно не кидать все просмотрено до дыр...
« Последнее редактирование: 29.04.2016, 18:30:39 от Skelvin » Записан
Aleks.Denezh
Практически профи
*******

Репутация: +372/-4
Offline Offline

Пол: Мужской
Сообщений: 2762



« Ответ #1 : 29.04.2016, 17:51:27 »

ссылки на похожие темы можно не кидать все просмотрено до дыр...
ну ну..

Код
$input = JFactory::getApplication()->input;
$description = $input->getString( 'description' );
$db = JFactory::getDbo();
$query = $db->getQuery( true )
->insert( '`table`(`description`,`user_id`)' )
->values( $db->q( $description ). ',' . JFactory::getUser()->id );
$db->setQuery( $query )->execute();

Если пользователь гость, то запишет в поле user_id ноль! и в форме не нужно передавать user_id!
Записан
Skelvin
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 30



« Ответ #2 : 29.04.2016, 18:46:24 »

ну ну..

Код
$input = JFactory::getApplication()->input;
$description = $input->getString( 'description' );
$db = JFactory::getDbo();
$query = $db->getQuery( true )
->insert( '`table`(`description`,`user_id`)' )
->values( $db->q( $description ). ',' . JFactory::getUser()->id );
$db->setQuery( $query )->execute();

Если пользователь гость, то запишет в поле user_id ноль! и в форме не нужно передавать user_id!

Это в php файле обработчике добавить?
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet