cat_id инкремент индекс
root_cat (0 если нет РОДИТЕЛЬСКОЙ (исправил!) категории, если есть родитель то = cat_id дочерней категории)
name
item
id инкремент индекс
id_category индекс (= category.cat_id Связь с таблицей категорий)
image
Задача извлечь все значения поля image для всех товаров категории и всех её вложенных категорий по переданному в $_POST['id_cat'] (равен category.cat_id)
Прошу помочь составить сложный SELECT. либо подсказат ькак правильно извлечь нужный параметр, возможно одним SELECTOM не обойтись
Мой запрос, судя по нулевому кол-ву извлекаемых значений, неправильный.
В вашем примере пришлось-бы дополнительно хранить хеши всех заказов в бд, чтобы сравнивать их с отправленными на изменение/оплату заказами.
Думаю пока ограничится хранением id заказа в сессии.
Скрывать id заказов желательно потому, что он в большинстве платёжных систем используется для формирования ключа к транзакциям по платежам. По этмоу ключу в частности проверяется оплачен-ли конкретный заказ. Кроме Id-заказа в ключ включается id магазина, пароль для магазина и т.п.
и в целевом скрипте что-то вроде if(isset( $_SESSION['order_id'])) {
//скидываем элемент с неизвестным $num чтобы достать его по ключу "0" с массива
sort($_SESSION['order_id']);
$order_id=$_SESSION['order_id'][0];
...
}
Как-то так наверно с получением id.
Теперь с отправкой его в платёжную систему.
Я правильно понимаю что тут опять надо избежать отправки post-запроса из формы с размещением id_заказа и прочих параметров в полях типа hidden и надо реализовывать как-то по-другому?
В последнем проекте делали почти как сказал тов. Мелкий: одна таблица для всех категорий, с двумя доп. полями - "id родителя" и "id дочки"
Цитата:
Не в тему, но может подскажете, как вывести эти категории в админке, я не могу не чего придумать (товар может быть привязан только к 1 категории)
А чего там думать то. Выводим список категорий верхнего уровня (у кого нет родителей), потом через каждую выводим список её дочерних категорий и так далее пока не дойдём до категорий, у которых нет дочерних категорий. Иными словами ничем не отличается от вывода категорий в самом каталоге, разве что с добавлением средств управления.
Так присвоить значение не можем потому, что $_SESSION['order_id'] будет хранить последнее значение $reselt['order_id'] из цикла
то есть надо отдельное значение для каждого заказа..
//и пишем в сессию разные значения для всех заказов
$_SESSION['$name'] = $reselt['order_id'];
echo "<a href="pay.php>Оплатить</a>";
}
На целевой странице ищем в $_SESSION элемент содержащий в имени "order_id" и берём его значение за ID заказа. Правильно?
Или можно сделать как-то по-изящнее?
Тогда придётся, наверно, передавать в $_POST время создания заказа, сумму и иные не секретные параметры, по которым идентифицировать заказ и брать нужную переменную сессии, правильно?
Либо как-то инициировать запись в сессию при щелчке на кнопку Оплатить/удалить... чтобы был только один $_SESSION['order_id'] ?
На странице журнала заказов есть неопределённое число заказов, выводимых в цикле из бд. И у каждого заказа, соответственно, ссылки/кнопки - удалить, оплатить, получить и т.д.
Чтобы работать с заказом на страницах оплаты и проч., необходимо передать их id. Для скрытия id от юзера, как я понял (подсказали), лучше всего записывать его в сессию а не передавать в скрытом поле hidden в $_POST.
То есть делать нужно
Но вот как в этом случае организовать записи id в сессию и в какой момент осуществлять запись значения сессии?
Ведь выводится может много заказов, не для каждого же создавать отдельную переменную сессии?
Спасибо за ответ. Система работы и отслеживания заказов уже организована. В настоящее время id заказа простое число. и требуется мне фактически лишь во время перенаправление юзера на страницу оплаты на сайте магазина, и, через неё, перенаправление на оплату уже на сайт платёжной системы. Дописать id заказа в сессию я пожалуй и могу, - перенаправлю юзера на страницу оплаты магазина где все данные будут в POST, id заказа в сессии. Но платёжная система может принимать заказы исключительно через POST или GET запросы... (речь о робокассе).
C журнала заказов юзер может быть отправлен на оплату заказа. Для этого придётся передавать на страницу оплаты сайта магазина id заказа.
Этот же id используется для отправки заказа на сервер платёжной системы и он же фигурирует в ответном отчёте системы об оплате/не оплате счёта.
Как можно эффективнее всего сформировать и скрыть id заказа, чтобы он уходил на сервер платёжной системы, и его можно было бы использовать при пере направлении на страницу оплаты заказа на сайте самого магазина?
Есть сайт. Если не трудно, оцените его, пожалуйста.
Сайт дал загрузить файл с мета-тэгами содержащими исполняемый код, потому вероятно наличие дыры в безопасности. Если изображение соответствующим образом обрабатывается, делая их бесполезными, то всё в порядке. На Одноклассниках в своё время не стоял такой фильтр... .
Если не привязываться ни к какой CMS/имеющейся структуре бд, + стоит задача подсчёта реального тематического "веса" тега в статье, то я бы реализовал "счётчик семантического веса" Так:
1. При создании статьи/страницы/раздела (в зависимости от архитектуры сайта), регулярные выражения процеживают весь контент на предмет вхождения определённых слов (PHP, Basic и проч.) Откуда вам брать рег-выражения думайте сами. Структуру вашег опроекта я не знаю. Они могут формироваться налету исходя из таблицы с тегами, заносимыми в бд из админки/из поля "теги" в форме создания статьи/ формироваться автоматически исходя из определённого количества вхождений слов в статье и комментариях к ней... .
2. Профильтровали контент, выяснили что MSSQL в статье - 20, PHP - 15.
3. Структура таблицы веса тегов:
tag_id | tag_word | tag_weight | tag_link
4. Определяем правило подсчёта веса тега в отдельной статье. Допустим вы решите что вес 4 (что это уж решайте сами, - количество повторений в тексте, либо условный вес в диапазоне от 1 до 10, проставляемый через админку. Я бы, например, ограничил диапазон диапазон значений 100, и просчитвал бы его, например, так - 5 очков за наличие тега в заголовке статьи, 5 очков за повторение тега в заголовке статьи. + по одному очку за каждое повторение тега в тексте статьи.
5. Далее, я бы принял некую пороговую величину веса (10), до достижения которой мы не считаем его вес в статье.
6. Я бы прикинул какого размера у меня будет облако тегов и решил сколько одинаковых тегов разного веса я там могу выводить. Например 3. Но так, как программисты очень любят усложнять себе жизнь, я бы пошёл дальше и сделал бы управление этим параметром $porog через админку модуля "облако тегов".
6. И так, прошлись рег-выражениями по статье. Если какойто вес есть и набрано MSSQL в статье - 20, PHP - 15.
7. То Смотрим все tag_id где tag_word == тегам нашей статьи, отбирая по возрастанию веса тегов статьи (как пример, - от 20 для MSSQL) с лимитом $porog, если у меня отобрались в массиве значения - 19, 25, 61, то я записываю в таблицу tags нашу статью, вместо статьи с весом 19. (в бд будет при таком же отборе 20, 25, 61). А именно, апдейтим запись где вес 19, вставляя наш новый вес, и параметр tag_link, который может быть ссылкой на статью, либо её числовым идентификатором.
P.S. Не буду исправлять в посте. Выборку из таблицы нам надо делать только одного id, у которого наименьший tag_weight. И если вес тега статьи >, то перезаписывать строку в таблице. В таблице всё, включая, при желании, и tag_word можно хранить в числовых полях, как числовые индексы, с которыми субд будет работать очень быстро даже при большом их количестве, хотя сомневаюсь что их перевалит когда-нибудь за 500.
Вот такой вот маленький Яндекс. Надо научится писать лаконично...
Если вы работаете с удалённым сервером, то проверьте физическое наличие создаваемого результирующего файла в указанной директории, а также время создания файла. Если файла там не будет, а так скорее всего и есть, смотрите лог сервера.
Цитата:
$newnameUchkuma
я php 1 мксяц а Вы видно меньше ,я же описал что работает
ведь я полагаю раз
<input type="file" name="FILE" size="20" /> ';
то и массиф
$_FILE а не $FILES.
Дочитал. Массив с данными по загруженным файлам тут $_FILES.
Цитата:
то и массиф
$_FILE а не $FILES
- Бред.
Цитата:
я php 1 мксяц а Вы видно меньше
После таких сообщений помощь автору темы на этом форуме обычно заканчивается. Моя, во всяком случае, точно.