Как записывать и выбирать данные из БД!!!

Обсуждение CMS Made Simple в России.

Moderators: iturbay, wdwp

Post Reply
stalnoiivan
New Member
New Member
Posts: 4
Joined: Fri Oct 01, 2010 7:24 am

Как записывать и выбирать данные из БД!!!

Post by stalnoiivan »

Прошу прощения за возможный не корректный вопрос. :(
Эта CMS для меня новая... раньше делал проекты на своей самописной cms.
Вопрос в следующем: как записывать и выбирать (выводить) данные из БД?
Надо ли подгружать файл config.php и потом делать обычные запросы в бд, или здесь какие-то другие моменты ...
В итоге мне надо сделать форму для ввода логина и пароля. Форма регистрации уже есть, проблема только в записи информации в бд.
Если всё введено корректно, то появляется доп информацию на этой же странице.
Таблица в бд уже создана.
Буду благодарен за любую информацию. За ранее спасибо!!!
Fenik17
Power Poster
Power Poster
Posts: 450
Joined: Tue Jun 01, 2010 5:42 am

Re: Как записывать и выбирать данные из БД!!!

Post by Fenik17 »

К примеру, часть кода из одного плагина:

Code: Select all

	global $gCms;
	.......
	$query = 
	'SELECT content_name,content_alias, active, content FROM ' . cms_db_prefix().'content AS C JOIN ' . cms_db_prefix().'content_props AS CP ' .
     'ON C.content_id = CP.content_id ' .
     "WHERE (CP.prop_name = 'content_en') AND (CP.content LIKE '%albums=%') AND (id_hierarchy LIKE '%.$parent_id.%') " .
	'ORDER BY C.hierarchy DESC;';
	$db =& $gCms->GetDb();
	$res = $db->GetArray($query);
	if( $res ) {
		foreach ($res as $one) {
			........
		}
	}
stalnoiivan
New Member
New Member
Posts: 4
Joined: Fri Oct 01, 2010 7:24 am

Re: Как записывать и выбирать данные из БД!!!

Post by stalnoiivan »

Большое спасибо за ответ Fenik17!
а что означает запись
. cms_db_prefix().'content AS C JOIN ' . cms_db_prefix().'content_props AS CP ' .
    'ON C.content_id = CP.content_id ' .

я так понимаю content - это название таблицы
а что означает AS C JOIN и AS CP?
и что означает запись
CP.prop_name

Ещё раз спасибо за отклик :)
Last edited by stalnoiivan on Fri Oct 01, 2010 10:59 am, edited 1 time in total.
Fenik17
Power Poster
Power Poster
Posts: 450
Joined: Tue Jun 01, 2010 5:42 am

Re: Как записывать и выбирать данные из БД!!!

Post by Fenik17 »

я так понимаю content - это название таблицы
Нет. Полное название таблицы - cms_content, к примеру. Префикс таблиц задается при установке, его и возвращает функция cms_db_prefix().
а что означает AS C JOIN и AS CP?
и что означает запись
CP.prop_name
Это присваивание алиасов в рамках запросов. Стандартный синтаксис SQL.
Т.е. пишем "SELECT * FROM my_table_name AS T1 ... " - и дальше в запросе можно обращаться к полям таблицы my_table_name через T1.название_стобца. Можно также писать без AS.
К примеру, "SELECT id, price FROM orders_t t1 JOIN prices_t t2 ON t1.price_id = t2.id".

И еще. Чтобы использовать переменную $gCms, скрипт должен выполняться к контексте cms, т.е. через вызов index.php. Есть три варианта - написание модуля, написание плагина или пользовательский тег. Обо всем есть на форуме и в документации. Да и в коде самой cms  куча примеров.
stalnoiivan
New Member
New Member
Posts: 4
Joined: Fri Oct 01, 2010 7:24 am

Re: Как записывать и выбирать данные из БД!!!

Post by stalnoiivan »

Благодарю за помощь!
Post Reply

Return to “Russian - русский”