Вставка в базу

Главные вкладки

Аватар пользователя julia_leo julia_leo 15 июня 2008 в 19:05

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

$usr_id = $_GET['u'];
if(trim($usr_id)!='')
{
$result=db_query("SELECT * FROM matrix WHERE (id_usr=%d)", $usr_id);
if(db_num_rows($result)==0)
{
  вставляем запись в базу
}

Но столкнулась с проблемой. На локальном друпале все работает нормально, но на сервере происходят чудеса. Код отрабатывает несколько раз, т.е. вставляется несколько записей с пустым $usr_id, а потом вставляется уже правильная запись. Кроме того, после удаления вставки в базу, друпал продолжает по-прежнему отрабатывать вставки, т.е. непонятно где-то в недрах застрял код, хотя кеширование отключено. Каким образом тогда можно реализовать такие операции, я склонняюсь к мысли, что лучше все-таки сделать обычный пхп-скрипт, не зависящий от друпала, но мне ннужно еще делать проверку, что это авторизованный пользователь из своего профиля нажал ссылку.

Комментарии

Аватар пользователя SiR SiR 16 июня 2008 в 12:42

1. Вот так можно получить id пользователя

global $user;
$user_id = $user->uid

2. Для корректной отработки нажатия на кнопку необходимо использовать FORM API.
Там все вставляется корректно и можно сделать штатную проверку