Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - golden-den

Страницы: [1] 2 3 4
1
PHP / редирект на 404 ошибку
« : 12 Апреля 2009, 11:23:59 »
у меня CMS с ЧПУ.
в .htaccess все запросы перенаправляются на index.php
Там парсится URL и генерируется страница. Вся информация о структуре сайта в базе.
 Нужно сделать правильную обработку 404 ошибки, т.е. если в базе не найден раздел/подраздел, отвечающий введенному URL, то пользователю выводится своя 404 ошибка.

в index.php стоит проверка: если нет раздела, то
header ("Location: /404.php");exit;
при этом идет редирект, 404 ошибка, но адрес в строке меняется с введенного на 404.php
Как сделать, чтобы адрес в строке не менялся?

в  .htaccess я прописал
ErrorDocument 404 /404.php
только изначально мы не знаем -  правильный url или нет - и попадаем в index.php, где и узнаем это.
mod_rewrite -ом вроде нельзя это сделать (вся инфа в базе, а правил для названий разделов нет - они любые могут быть)

2
Базы данных / nested sets - соседние элементы
« : 08 Сентября 2007, 22:52:19 »
есть структура nested sets.
модуль phpDBTree 1.4
При выводе инфы о конкретном элементе дерева иногда полезно  ставить ссылки "Предыдущий" - "Следующий".
Это соседи (level тот же).

Только вот как найти этих соседей?
В начале есть только cid элемента.

3
Как сделать так, чтобы текст подчеркивался прерывистой линией.

(text-decoration: underline; - подчеркивание сплошное, а надо, чтобы линия прерывалась)

4
Всё о Html / скрипт js спрятать в css
« : 30 Июля 2007, 17:51:59 »
есть к примеру таблица




В каждый нужно поставить свойства onMouseOver, onMouseOut

А можно ли это сделать один раз в определении класса css
.td_img{
onMouseOver="menu1_dark(this);
onMouseOut="menu1_light(this);
}?

5
Базы данных / insert без дупликатов
« : 18 Июля 2007, 22:02:15 »
CREATE TABLE `catalog_data` (
  `id` int(11) NOT NULL auto_increment,
  `cid` int(16) default NULL,
  `title` text
  PRIMARY KEY  (`id`)
) TYPE=MyISAM


Как добавить в эту таблицу 1 строку, только так чтобы не было дупликатов со значениями \'cid\'.

Делать сначала один запрос,  в которм проверять наличие строки, а заетм, если еще нет такой строки, то вторым запросом добавлять?
Можно ли одним запросом сделать?

6
Есть структура Nested sets - каталог товаров.
На каждый товар цена зависит от еще одного параметра, т.е. цен у каждого товара много.
При выводе элементов каталога хочу сразу одним запросом находить цены (min и max), только выводить надо все товары и без цены тоже (цена есть не у всех элементов, да и элементов,отвечающих за названия групп не может быть цены)

талица price = {id, item_id, color_id, price}

запрос1  - вывод элементов каталога
select i.cid, d.title, d.type
from $table i, $tableData d
where i.cleft > $leftId and i.cright < $rightId and i.clevel=$level+1 and i.cid=d.cid
order by i.cleft

связь с таблицей Price по столбцу item_id (id товара из каталога)
Если делать объединение запросов,

select i.cid, d.title, d.type, min(p.price) as pmin, max(p.price) as pmax
from $table i, $tableData d, price p
where i.cleft > $leftId and i.cright < $rightId and i.clevel=$level+1 and i.cid=d.cid
and p.item_id=i.cid
group by i.cid
order by i.cleft

то на выходе ТОЛЬКО те строки, у которых в таблице есть цена. Пропадают сразу все товары без цены и названия групп.


Как сделать, чтобы для каждой строки первого запроса, находились (!если есть) min(price) max(price)?

Вариант для каждой строки длать Новый запрос в таблицу Price  не нравится

7
JavaScript & JScript / onfocus="blur();"
« : 15 Ноября 2006, 20:18:10 »
Если прописать на ссылку

то при выделении ссылки-картинки мышкой появляется пунктирная рамочка

если прописать свойство blur, т.е.

то рамочки не появляется.

Вопрос: как сделать, чтобы по умоланию ВСЕ картинки имели такое совйство?
Можно ли в файле css создать класс или просто прописать img{}, и там прописать blur();  ?

8
PHP / виртуальное выполнение скрипта
« : 09 Ноября 2006, 18:37:51 »
есть файл code.php
в нем находится произвольный код, типа:
циклы, выборки из базы, print и т.д.
Результатом code.php будет к примеру таблица данных, выбранных из базы + картинки и т.д.

Основным скриптом является другой файл index.php (к примеру).
Необходимо выполнить code.php из основного скрипта, не выводя на экран результат code.php, и передать этот результат дpугой переменной в index.php.

1. Как это сделать?
при этом хотелось бы, чтобы ограничений на code.php не было.
т.е. там могут быть и print"";
Если же отказаться от операторов print""; , то надо все результаты передавать на выходе в одну переменную.
В этом случае в файле index.php надо знать переменную, в которую все передавалось или же ставить требование: переменная должна быть $return и никакая другая.

9
PHP / dbtree изменение порядка узлов
« : 23 Февраля 2006, 17:06:39 »
Nested sets
как изменить порядок размещения узла в базе (уровень остается тот же)?
может где есть дополнение к dbtree?

10
PHP / dbTree
« : 22 Февраля 2006, 21:24:23 »
Решил попробовать работать с классом dbtree

Автор этого класса пишет:

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

CREATE TABLE categories (
cat_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
cat_left INT UNSIGNED NOT NULL,
cat_right INT UNSIGNED NOT NULL,
cat_level INT UNSIGNED NOT NULL,
PRIMARY KEY(cat_id)
KEY (cat_left, cat_right, cat_level)
);


Что значит структуру хранить отдельно?
Что отдельная таблица со ВСЕМИ свойствами ВСЕХ объектов, а связь при этом по полю cat_id?

11
Веб Сервера / action throw не работает
« : 20 Февраля 2006, 13:45:11 »
хочу сделать ЧПУ
в .htaccess прописал (.htaccess в корне сервера)
Action throw /index.php

ForceType throw


ForceType application/x-httpd-php



но не работает.
(я тестирую локально. Если прописать просто 404 ошибку, то она корректно обрабатывается)
в лог ошибок error.log ничего не добавляет
в лог GET access.log пишет  HTTP/1.1" 404


Подскажите решение проблемы

12
JavaScript & JScript / проблема с alert в firefox
« : 19 Февраля 2006, 21:33:59 »
есть небольшой элементарный скрипт



Untitled







в IE все работает (окошко alert_a с цифрой 5 и кнопкой ОК)

а в Firefox 1.0.7. выскакивает пустое окошко с ДВУМЯ пустыми кнопками (без названий), похожее на confirm, только сколько не жми на эти кнопки, ничего не происходит.
Может кто знает что делать?

13
PHP / Вложение картинки в письмо.
« : 06 Января 2006, 21:35:03 »
есть функция (скачал с php.net вроде )

function XMail$from$to$subj$text$filename) {
    
$f         fopen($filename,"rb");
    
$un        strtoupper(uniqid(time()));
    
$head      "From: $from\\n";
    
$head     .= "To: $to\\n";
    
$head     .= "Subject: $subj\\n";
    
$head     .= "X-Mailer: PHPMail Tool\\n";
    
$head     .= "Reply-To: $from\\n";
    
$head     .= "Mime-Version: 1.0\\n";
    
$head     .= "Content-Type:multipart/mixed;";
    
$head     .= "boundary=\\"----------".$un."\\"\\n\\n";
    
$zag       "------------".$un."\\nContent-Type:text/html;\\n";
    
$zag      .= "Content-Transfer-Encoding: 8bit\\n\\n$text\\n\\n";

    
$zag      .= "------------".$un."\\n";
    
$zag      .= "Content-Type: application/octet-stream;";
    
$zag      .= "name=\\"".basename($filename)."\\"\\n";
    
$zag      .= "Content-Transfer-Encoding:base64\\n";
    
$zag      .= "Content-Disposition:attachment;";
    
$zag      .= "filename=\\"".basename($filename)."\\"\\n\\n";
    
$zag      .= chunk_split(base64_encode(fread($f,filesize($filename))))."\\n";

    if (
mail($to$subj$zag$head)) {return true;}
	
	
else {return 
false;};
};

Она присоединяет файл к письму, как вложение.
Только письмо приходит с вложением, не отображающемся в тексте письма

письмо например такое
----------------------
Представляем вам нновый образец станка...
"станок"

-----------------------

при этом в письме отображается текст, а вместо картинки - рамка.
Картинка же есть в самом письме, но как вложение. ее можно посмотреть, кликнув на вложение

Как сделать, чтобы картинка отображалась непосредственно в html коде письма?

В почте смотрел как спам устроем - там пишут ""
Что за cid?


PS сам спамом не занимаюсь ;-)

14
Есть таблица











aaaaaaa
bbbbbbbbb
ccccccccccc





как сделать так, чтобы по нажатию на какой-нибудь ссылке скрывалась - вторая и третья строчка

Дело в том, что если  сделать  так:

.....


а затем скрипт делает style.display="none";

то все работает, а вот если
...

то не работает

пробовал getElementById - не получается

15
Вот простая страничка
скрипт скрывает и вновь показывает слой
Только работает все это как-то странно
Для того, чтобы ПЕРВЫЙ раз скрыть слой, необходимо нажать 2 раза
(это только первый раз когда нажимаешь на ссылку), а затем все работает норамально: нажал - показалось, нажал - скрылось







Untitled























Страницы: [1] 2 3 4