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

Записать в поле значение посде добавления объекта

04.05.2011, 17:00
Гость
Гость

Каким образом возможно после добавления или после изменения объекта в поле $f_Name - строка, недоступное никому, записать значение из поля $Namesp - список?
Пробовал:
В действии после добавления объекта, а также в действии после изменения объекта:
Код:
";
$f_Name=$f_Namesp_name;
echo "

Поле $f_Name всёравно пустое. Что делаю не так?
04.05.2011, 18:06
Asiat
Аниматика
Asiat

Зарегистрирован:
2005-12-12
Сообщений: 576

Присвоить значение можно попробовать в условиях добавления, но не после.
Однако, насколько помню, с недоступными никому полями это может не прокатить.
Тогда после добавления делайте отдельный запрос к базе типа UPDATE, для идентификатора добавленного объекта можно использовать переменную $message.

Разработка сайтов на Netcat с 2006... хм-м ... или 2005 хммм года. В общем, обращайтесь.
04.05.2011, 18:15
Гость
Гость

для начала напишите
Код:
 
";
echo $f_Namesp_name;
exit();
echo "

и увидите чему равно $f_Namesp_name;
вообще не должно с пост запросом все переменные передавться, скорее всего вам нужно в форме создать скрытое поле и через него передавать значение, хотя я не доконца понимаю, что вы хотите изобразить и почему именно после добавление что-то присваивать нужно. в этот момент уже все добавлено в базу. логичнее это сделать до добавления или писать запрос что-то типа Update Message$classID SET Name тут получить что-то что в базу отправить WHERE Message_ID=$message

Короче говоря не факт что переменная существует в этот момент и та и другая, с тем значением с которым нужно, от которой вы пытаетесь добиться внимания и своего расположения
04.05.2011, 18:29
Гость
Гость

Цитата:
Присвоить значение можно попробовать в условиях добавления, но не после.
Однако, насколько помню, с недоступными никому полями это может не прокатить.
Тогда после добавления делайте отдельный запрос к базе типа UPDATE, для идентификатора добавленного объекта можно использовать переменную $message.

Не прокатило с условием добавления и с доступным и недоступным полем
04.05.2011, 18:37
Гость
Гость

Цитата:
для начала напишите
Код:
 
";
echo $f_Namesp_name;
exit();
echo "

и увидите чему равно $f_Namesp_name;
вообще не должно с пост запросом все переменные передавться, скорее всего вам нужно в форме создать скрытое поле и через него передавать значение, хотя я не доконца понимаю, что вы хотите изобразить и почему именно после добавление что-то присваивать нужно. в этот момент уже все добавлено в базу. логичнее это сделать до добавления или писать запрос что-то типа Update Message$classID SET Name тут получить что-то что в базу отправить WHERE Message_ID=$message

Короче говоря не факт что переменная существует в этот момент и та и другая, с тем значением с которым нужно, от которой вы пытаетесь добиться внимания и своего расположения

Получить хочу следующее:
В компоненте "товар" инет-магазина, поле Name - название товара, строка. Эта переменная выводится в корзине. Но при добавлении товара в магазин, хочется сделать чтобы каждый раз не набивать одно и тоже название товара в категории, выбирать из названий товаров (в магазине ограниченное кол-во названий товаров).
И если сделать поле Name - список, то в корзину (в заказ и т.д.) подаётся не название из списка а его ID, т.е. цифра. И в корзине уже не понято что за товары в ней лежат. Докопался до того, что понял что переделать это никак нельзя. Придумал сделать поле Name (строка) недоступным и сделать ещё одно поле Namesp (список).И при добавлении товара (или изменении) в магазин поле Name автоматом получало бы значение из Namesp_name. Но чтото не догоняю как это реализовать по другому. К сожалению в MySQL не силён.
04.05.2011, 18:42
Гость
Гость

Код:
Update Message$classID SET Name Namesp_name WHERE Message_ID=$message

Так ли? и куда эту строку добавлять? в действие после добавления/изменения?
или в системные настройки компонента?
04.05.2011, 21:04
Гость
Гость

Решил c помощью знакомого! Спасибо ему огромное.
Может кому пригодится:
$name - Название товара (список NameIzdelie)
$ItemID - Артикул овара
В префиксе шаблона "Корзина" добавил такой код:
Код:
";
for( $i = 0 ; $i < count( $GLOBALS['shop']->CartContents ) ; $i++ ) {
$idtemp = $GLOBALS['shop']->CartContents[$i]['Name'];
$nametemp = listQuery("SELECT NameIzdelie_Name FROM Classificator_NameIzdelie
Where NameIzdelie_ID = $idtemp",
'$data[NameIzdelie_Name]');
$GLOBALS['shop']->CartContents[$i]['Name'] = $nametemp ;
$GLOBALS['shop']->CartContents[$i]['Name'] .= " " . $GLOBALS['shop']->CartContents[$i]['ItemID'];
}
$result .= $GLOBALS['shop']->PrintCart();

В результате: в корзине выводится название товара и его артикул.
05.05.2011, 07:48
Гость
Гость

C магазином не работал, но в цикле генрить запросы к базе это тихий ужас
вот что написано в документации
Код:
Списки – простейшая таблица, структура которой состоит из пяти полей: номер (ID) записи,  имени (текстовое поле), приоритета, дополнительного значения и метки доступности (включен/ выключен). Так, если мы создаем список «Деньги» (Money), в нем будут пять полей: Money_ID,  Money_Name, Money_Priority, Value, Checked. В теории баз данных термину «список» почти точно соответствует термин «классификатор».
05.05.2011, 15:17
Гость
Гость

Цитата:
C магазином не работал, но в цикле генрить запросы к базе это тихий ужас
вот что написано в документации
Код:
Списки – простейшая таблица, структура которой состоит из пяти полей: номер (ID) записи,  имени (текстовое поле), приоритета, дополнительного значения и метки доступности (включен/ выключен). Так, если мы создаем список «Деньги» (Money), в нем будут пять полей: Money_ID,  Money_Name, Money_Priority, Value, Checked. В теории баз данных термину «список» почти точно соответствует термин «классификатор».

Согласен, но другого способа повидимому нет
06.05.2011, 18:41
Константин

Зарегистрирован:
2010-06-23
Сообщений: 8

Можно сделать не применяя запросов в цикле, выбираем весь список, в массив, а потом достаем из него по id нужное нам имя, по ресурсам я думаю это будет куда менее затратно.
20.04.2012, 16:34
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 1037

Действия после добавления
$db->query("UPDATE Message$classID SET Name='".$f_Namesp."' WHERE Message_ID=".$message);

Модуль "Почтовые уведомления" – настройка email уведомлений на вашем сайте без программирования. Бесплатно. http://netcat.ru/products/CatStore/solution_242.html
198 196 2012-04-20 16:34:54 11256
Описание проекта