parser

/faq/faq
/authors/авторы
/docs/документация

/powered_by_parser/в действии
/feedback/куда говорить
/jargon/жаргон

/download/скачать

/examples/примеры
/forum/форум



Поиск по форуму

По умолчанию ключевое слово ищется только в заголовке сообщения.

Ключевое слово:

Фильтровать по автору:



Лови..

Sanja | bougakov@mailru.com 06.08.2001 00:36

^var[fullpath;/path/k/twoim/failam/na/servere/]
^context[sql;
 ^server[юзер:пароль@база/pictures;
  ^sql[DROP TABLE IF EXISTS pictures]
  ^sql[CREATE TABLE pictures (
  name   varchar(255) DEFAULT '' NOT NULL,
  width  int(3) unsigned DEFAULT '0' NOT NULL,
  height int(3) unsigned DEFAULT '0' NOT NULL
  space  int(3) unsigned DEFAULT '0' NOT NULL)]
 ]
#тут заканчивается контекст sql
]
^context[mypictures;
 ^index[pictures;\.(gif|jpg)$]
  ^menu[^var[filename;^item[0]]
записываем во временную переменную filename имя файла
^context[dimensions;
 ^imgsize[^var[fullpath]^var[filename]]
 ^var[width;^item[0]]
 ^var[height;^item[1]]
 ^var[space;^eval[^item[0]*^item[1]]]
#тут заканчивается контекст dimensions
]
.. и выцепляем габариты этого самого файла.
Заодно считаем площадь файла в квадратных пикселях (блин, вслушайся, как это звучит - "в квадратных пикселях.." - вот умора..), чтобы затем по ней сортировать.

Затем всё это добро упаковывается в базу. Хотя можно открыть ещё один контекст и писать в него - это как удобнее. Мне удобнее - в базу.
^context[sql;
 ^server[юзер:пароль@база/pictures;
  ^sql[LOCK TABLES pictures WRITE]
  ^sql[INSERT INTO pictures (name, width,
   height, space) VALUES ('^var[filename]',
   '^var[width]', '^var[height]', '^var[space]')]
  ^sql[UNLOCK TABLES]
 ]
#тут заканчивается контекст sql
]
#тут заканчивается контекст mypictures
]
В итоге у нас на руках - аккуратненькая таблица pictures в mysql'ной базе. Юзер нажал на refresh - она обновилась. Тут же можем её прочитать, сортируя по размеру картинок, никто не мешает:
<h1>Картинки с выставки:</h1>
^context[sql;
 ^server[юзер:пароль@база/pictures;
  ^sql[SELECT name, width, height 
   FROM PICTURES SORT BY space]
  ^menu[<p><img src="^item[name]" 
        width="^item[width]"
        height="^item[height]"
        alt="" border="0"></p>]
 ]
#тут заканчивается контекст sql
]
P.S. Код я не тестировал, могут быть опечатки. Но работать, по идее, должно...

<<  Вернуться к списку сообщений


E-mail: mailbox@parser.ruCopyright © 1997-2001 Студия Артемия Лебедева