Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

RE: Вопросы по PHP (для новичков)

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> RE: Вопросы по PHP (для новичков)
Имя
Сообщение << Старые топики   Новые топики >>
RE: Вопросы по PHP (для новичков) - 2009-01-20 18:58:23.380000   
Mamka

Сообщений: 560
Оценки: 0
Присоединился: 2007-11-26 22:20:09.313333
есть вот такой селектор:
&lt;select name='status_sel[{$row['id']}]' style='background-color:#ebebe7'&gt; &lt;option value='no_status' selected&gt;Нет статуса&lt;/option&gt; &lt;option value='closed_ok'&gt;Закрыто успешно&lt;/option&gt; &lt;option value='cloded_bad'&gt;Закрыто неуспешно&lt;/option&gt; &lt;option value='open'&gt;Открыто&lt;/option&gt; &lt;option value='at_time'&gt;Отложить до &lt;/option&gt; &lt;/select&gt; есть вот такой обработчик:
if (isset($_POST['status_sel'])) { foreach (@$_POST['status_sel'] as $key =&gt; $value) { if (is_numeric($key)) { $res_del=@mysql_query("SELECT * FROM events WHERE id='$key'"); while ($row = mysql_fetch_array($res_del)) { @mysql_query("UPDATE events SET status=$status_sel WHERE id='$key'"); } } $result_of_event = "$status_sel."; } } После нажатия сабмита $result_of_event становится равным "Array"


Аналогичный запрос с удалением работает, он выглядет так(пишу, что бы было понятно, каких ошибок нет):
Инпут:
&lt;input type='checkbox' name='del[{$row['id']}]' /&gt; Обработчик:
if (isset($_POST['del'])) { if (@$_POST['apass']==$adminpass) { foreach (@$_POST['del'] as $key =&gt; $value) { if (is_numeric($key)) { $res_del=@mysql_query("SELECT * FROM events WHERE id='$key'"); while ($row = mysql_fetch_array($res_del)) { @mysql_query("INSERT INTO events_tr (date,time,author,event,comment,status,importance) VALUES ('{$row['date']}','{$row['time']}','{$row['author']}','{$row['event']}','{$row['comment']}','{$row['status']}','{$row['importance']}')", $link); } @mysql_query("DELETE FROM events WHERE id='$key'"); } $result_of_event = "Записи успешно удалены."; } }else{ $result_of_event = "Неверный пароль"; } }
Где я туплю?)
Post #: 481
RE: Вопросы по PHP (для новичков) - 2009-01-20 23:36:15.623333   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
quote:

ORIGINAL: Mamka
&lt;select name='status_sel[{$row['id']}]' style='background-color:#ebebe7'&gt;

quote:

Где я туплю?
Обрати мнимание на это 'status_sel[{$row['id']}]'
Post #: 482
RE: Вопросы по PHP (для новичков) - 2009-01-20 23:48:53.183333   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
:))) Он имел в виду двойные кавычки и в самое начало ЛЮБОГО тестируемого скрипта вставляй:

@set_time_limit(0);
@ini_set("display_errors","1");


ЗЫЖ И уж по началу точно не думай об экономии (ничтожной) - двойные кавычки или нет. Лучше думай о читабельности скрипта
Post #: 483
RE: Вопросы по PHP (для новичков) - 2009-01-22 15:14:12.180000   
Mamka

Сообщений: 560
Оценки: 0
Присоединился: 2007-11-26 22:20:09.313333
С Сержем разобрались, было несколько ошибок. Аля таких, как is_numeric() к данному селектору ну никак не катит и чет еще..)
Теперь такой вопрос:
Есть страница, она подгружается из другой с помощью аякса. Можно ли как-нибудь закрыть к ней доступ на прямую, а что бы она отображалась только тогда, когда является подгружаемой?
Сделал проверку на наличие переменной сессии, если ее нету - то exit;. Если сессия не началась при авторизации, то на эту страницу и правда не заходит, но если залогиниться - то спокойно можно войти на эту страницу напрямую.
Post #: 484
RE: Вопросы по PHP (для новичков) - 2009-01-22 15:20:30.980000   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
При подгрузке передавай переменную (типа пароля) /page.php?pass=123456, а при выдаче проверяй, есть ли она
Хотя нет, ее же можно в ХТМЛ-коде посмотреть… Похоже никак.
 
Post #: 485
RE: Вопросы по PHP (для новичков) - 2009-01-22 16:49:46.566666   
AdReNaL1Ne

Сообщений: 8027
Оценки: 350
Присоединился: 2005-09-11 06:38:05
quote:

ORIGINAL: Mamka

Теперь такой вопрос:
Есть страница, она подгружается из другой с помощью аякса. Можно ли как-нибудь закрыть к ней доступ на прямую, а что бы она отображалась только тогда, когда является подгружаемой?
Сделал проверку на наличие переменной сессии, если ее нету - то exit;. Если сессия не началась при авторизации, то на эту страницу и правда не заходит, но если залогиниться - то спокойно можно войти на эту страницу напрямую.


Так помести файл в диру, к которой нет доступа по протоколу http, вот и всё :)
Post #: 486
RE: Вопросы по PHP (для новичков) - 2009-01-22 16:55:05.760000   
Панда

Сообщений: 232
Оценки: 0
Присоединился: 2008-03-05 07:38:35.890000

quote:

ORIGINAL: Mamka

С Сержем разобрались, было несколько ошибок. Аля таких, как is_numeric() к данному селектору ну никак не катит и чет еще..)
Теперь такой вопрос:
Есть страница, она подгружается из другой с помощью аякса. Можно ли как-нибудь закрыть к ней доступ на прямую, а что бы она отображалась только тогда, когда является подгружаемой?
Сделал проверку на наличие переменной сессии, если ее нету - то exit;. Если сессия не началась при авторизации, то на эту страницу и правда не заходит, но если залогиниться - то спокойно можно войти на эту страницу напрямую.


ну а в чем проблема? сраница подгружается по определенному условию; ну и делай так: если условие выполнилось - то подгружается
Post #: 487
RE: Вопросы по PHP (для новичков) - 2009-01-22 17:06:04.300000   
Mamka

Сообщений: 560
Оценки: 0
Присоединился: 2007-11-26 22:20:09.313333
quote:

Так помести файл в диру, к которой нет доступа по протоколу http, вот и всё :)

А можешь рассказать, как у какой-либо папки убрать http-доступ?
quote:

ну а в чем проблема? сраница подгружается по определенному условию; ну и делай так: если условие выполнилось - то подгружается

Чуть-чуть повнимательней прочитай мой пост) у меня щас так и есть, НО если сессия уже начата, то все-равно могу войти напрямую на эту страницу
Post #: 488
RE: Вопросы по PHP (для новичков) - 2009-01-22 23:20:40.496666   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
quote:

А можешь рассказать, как у какой-либо папки убрать http-доступ?


.htaccess

Order allow,deny
Deny from all
Post #: 489
RE: Вопросы по PHP (для новичков) - 2009-01-22 23:26:54.570000   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
quote:

ORIGINAL: Pashkela
Order allow,deny
Deny from all
Он тогда ее оттуда и аяксом не подгрузит.
Post #: 490
RE: Вопросы по PHP (для новичков) - 2009-01-23 14:13:31.403333   
Mamka

Сообщений: 560
Оценки: 0
Присоединился: 2007-11-26 22:20:09.313333
Серж прав, не подгружает аяксом
Post #: 491
RE: Вопросы по PHP (для новичков) - 2009-01-23 14:17:37.570000   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
Я ответил просто на это:

quote:

А можешь рассказать, как у какой-либо папки убрать http-доступ?


выше просто не читал. Ну хз, проверяй рефер например - не тот - нафинг

Post #: 492
RE: Вопросы по PHP (для новичков) - 2009-01-23 15:12:40.240000   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Да лучше и не париться с этим, забить и все. Потому что кому надо он и реферер подделает ))
Post #: 493
RE: Вопросы по PHP (для новичков) - 2009-02-04 22:09:03.816666   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
народ подскажите? а можно ли сделать както так? чтоб скритп выполнялся пошагово. пример:
у меня есть скрипт который парсит один сайт и гребёт с него базу.. скрипт автомаризирован, он сам находит все линки шагает по каталогу и переписывает его в мою базу… в общем скрипт к своем окончанию должен проиндексировать около 20 000 страниц (у меня там рекурсивная функция)…. не мало правда?:) это он сделает приблизительно за часов этак 15 при моём канал инетовском :) но время выполнения скриптов сильно большим в конфигах ставить нехочется.. посему решил что возможно есть метод позволяющий скрипту выполняться с шагом например в 2 минуты… если такой действительно существует подскажите пожалуйста схему реализации… если не существует, то возможно есть другой выход? например выполнять скрипт не через апач, а например в консоли линукса? если да то как?
Post #: 494
RE: Вопросы по PHP (для новичков) - 2009-02-04 22:13:40.606666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Можно его запускать через cron, а результаты работы где-нить сохранять (файл\база), чтоб он знал, откуда стартовать.
Post #: 495
RE: Вопросы по PHP (для новичков) - 2009-02-04 22:19:40.310000   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
у меня он автоматически в базу пишет :)

и ты немного не понял.. мне его надо не через определённое время выполнить, а пошагово. тоесть чтоб его выполнение не останавливалось… так как если он остановится, то потом процесс будет начинаться сначала а мне надо чтоб он продолжался..
Post #: 496
RE: Вопросы по PHP (для новичков) - 2009-02-04 22:28:46.006666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Так он и так пошагово выполняется, по инструкционно))). А если ты имеешь ввиду задержку, то поставь в нужном месте sleep(пауза_в_секундах); И если надо увеличь max_execution_time
Post #: 497
RE: Вопросы по PHP (для новичков) - 2009-02-04 22:37:51.410000   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
вот именно альтернативу этому max_execution_time я и ищу
Post #: 498
RE: Вопросы по PHP (для новичков) - 2009-02-04 22:52:35.966666   
oRb

Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
http://ru.php.net/set_time_limit
не?
Post #: 499
RE: Вопросы по PHP (для новичков) - 2009-02-05 18:08:43.573333   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
:)
я там был уже :)

теперь другой вопрос…
возможно ли както с помощью SQL делать такое условие
существует таблица А с полями name и value типа TEXT
в базу посылается запрос типа INSERT INTO `A` VALUES('some_text','some_value');
надо выполнить этот запрос только в том случае если "somе_text" нигде (ни в одной из строк в данной таблице) не повторяется.

сейчас этот алгоритм реализую с помощью пхп, но думаю можно сделать заменитель для СКУЛ чтоб не повторялись запросы.. ибо их идёт у меня порядка 20 000 думаю смысл ясен :)
для пхп делаю так

$text='some_text';
$result=mysql_query("SELECT name FROM 'A' WHERE name='$text';");
if($result!=='')
mysql_query("INSERT INTO `A` VALUES('some_text','some_value');");

просто хочется сократить количество запросов хотябы раза в 2 :) так как очень много дублирующихся
Post #: 500
RE: Вопросы по PHP (для новичков) - 2009-02-05 18:29:07.546666   
kolPeeX

Сообщений: 1456
Оценки: 0
Присоединился: 2007-01-25 14:57:57.683333
Делай поле name unique


http://www.mysql.ru/docs/gruber/mg18.html " УНИКАЛЬНОСТЬ КАК ОГРАНИЧЕНИЕ СТОЛБЦА"
Post #: 501
RE: Вопросы по PHP (для новичков) - 2009-02-07 14:02:15.926666   
orobest

Сообщений: 13
Оценки: 0
Присоединился: 2009-02-07 13:47:59.313333
Здравствуйте! Подскажите в чём может быть проблема: мой сайт http://www.vipzone.tu2.ru/ совершенно нормально открывается в Opera, Firefox, а в Internet Explorer и в Avant Browser пишет: "Невозможно отобразить страницу", подскажите может быть что-то надо изменить в коде или это просто проблема хостинга?
Post #: 502
RE: Вопросы по PHP (для новичков) - 2009-02-07 19:41:50.536666   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
єто на твои браузеры проклятие наложено :)
а если по теме, то это может быть бок с шифрованием.. тоесть странички генерируются неверно
может быть у тебя там вирус просто на сайте .. хотя просмотрев быстро вроди незаметил ..
попроси что ктонить из знакомых попробовал на твой сайт зайти и посмотреть.. у меня просто линукс и ИЕ соответственно нет.. проверить немогу и выявить ошибку
Post #: 503
RE: Вопросы по PHP (для новичков) - 2009-02-07 21:14:54.160000   
orobest

Сообщений: 13
Оценки: 0
Присоединился: 2009-02-07 13:47:59.313333
Надо попробовать в админке проверить на вирусы, хотя вроде когда базу и движок сливал комп был чистый. Но всё равно спасибо. Друзей просил та же история не открывают, у брата тоже на tu2 такая же история только он сначала об этом не знал.
Post #: 504
RE: Вопросы по PHP (для новичков) - 2009-02-07 23:05:41.060000   
orobest

Сообщений: 13
Оценки: 0
Присоединился: 2009-02-07 13:47:59.313333
Всё нашел в чём проблема, зря людей беспокоил, надо просто в админке в настройках системы отключить gzip сжатие, тогда всеми браузерами открывается.
Post #: 505
RE: Вопросы по PHP (для новичков) - 2009-02-07 23:07:19.713333   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
или просто включить в браузере gzip:)
Post #: 506
RE: Вопросы по PHP (для новичков) - 2009-02-08 09:06:34.003333   
orobest

Сообщений: 13
Оценки: 0
Присоединился: 2009-02-07 13:47:59.313333
В том то и дело у многих отключено.
Post #: 507
RE: Вопросы по PHP (для новичков) - 2009-02-10 23:45:56.996666   
zhuk

Сообщений: 2962
Оценки: 10
Присоединился: 2007-02-20 21:00:01.303333
Увидел статью на хабре: http://habrahabr.ru/blogs/php/50216/

Скачал класс, кинул в папку вместе со скриптом, который скопировал из статьи. На выходе ошибка:

quote:

Fatal error: Call to undefined function curl_init() in W:\home\twi\www\twitter.class.php on line 252


Вот участок кода, на который идёт ссылка:
250 function process($url,$postargs=false){ 251 252 $ch = curl_init($url); 253 254 if($postargs !== false){ 255 curl_setopt ($ch, CURLOPT_POST, true); 256 curl_setopt ($ch, CURLOPT_POSTFIELDS, $postargs); 257 } 258 259 if($this-&gt;username !== false && $this-&gt;password !== false) 260 curl_setopt($ch, CURLOPT_USERPWD, $this-&gt;username.':'.$this-&gt;password); 261 262 curl_setopt($ch, CURLOPT_VERBOSE, 1); 263 curl_setopt($ch, CURLOPT_NObоdу, 0); 264 curl_setopt($ch, CURLOPT_HEADER, 0); 265 curl_setopt($ch, CURLOPT_USERAGENT, $this-&gt;user_agent); 266 curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); 267 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 268 curl_setopt($ch, CURLOPT_HTTPHEADER, $this-&gt;headers); 269 270 $response = curl_exec($ch); 271 272 $this-&gt;responseInfo=curl_getinfo($ch); 273 curl_close($ch); 274 275 276 if(intval($this-&gt;responseInfo['http_code'])==200){ 277 if(class_exists('SimpleXMLElement')){ 278 $xml = new SimpleXMLElement($response); 279 return $xml; 280 }else{ 281 return $response; 282 } 283 }else{ 284 return false; 285 } 286 }
Как устранить проблему? Насколько я понял, функция curl_init() стандартная для PHP > 4 ?
Post #: 508
RE: Вопросы по PHP (для новичков) - 2009-02-10 23:51:20.910000   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
да, стандартная (PHP 4 >= 4.0.2, PHP 5), только не у каждого хостера включена в php.ini

Post #: 509
RE: Вопросы по PHP (для новичков) - 2009-02-10 23:56:45.483333   
zhuk

Сообщений: 2962
Оценки: 10
Присоединился: 2007-02-20 21:00:01.303333
Я пока пытался запустить из денвера. Нужно добавить extension=php_curl.dll ? По крайней мере это единственное место, где встречается "curl".

Видимо придётся парсить :)
Post #: 510
RE: Вопросы по PHP (для новичков) - 2009-02-11 00:07:37.556666   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
http://ebay.custhelp.com/cgi-bin/ebay.cfg/php/enduser/std_adp.php?p_faqid=1073
Post #: 511
RE: Вопросы по PHP (для новичков) - 2009-02-11 00:15:05.516666   
zhuk

Сообщений: 2962
Оценки: 10
Присоединился: 2007-02-20 21:00:01.303333
Спасибо, информация полезная.

Но я уже решил проблему (тем более у хостера эта функция не включена): написал простенький РСС-парсер :)
Post #: 512
RE: Вопросы по PHP (для новичков) - 2009-02-11 17:18:50.623333   
LadyVamp

Сообщений: 3
Оценки: 0
Присоединился: 2009-02-11 14:37:10.396666
Доброго времени суток, подскажите как усторонить фатальную ошибку?
Post #: 513
RE: Вопросы по PHP (для новичков) - 2009-02-11 17:27:31.273333   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
напиши в коде /*
Post #: 514
RE: Вопросы по PHP (для новичков) - 2009-02-11 17:28:43.500000   
magistr_bender

Сообщений: 977
Оценки: 0
Присоединился: 2008-02-22 20:10:21.133333
quote:

ORIGINAL: zhuk
написал простенький РСС-парсер :)

поделись :)
Post #: 515
RE: Вопросы по PHP (для новичков) - 2009-02-11 17:35:27.393333   
LadyVamp

Сообщений: 3
Оценки: 0
Присоединился: 2009-02-11 14:37:10.396666
&lt;?php [/align]&nbsp; [/align]if (!defined('IN_ADMIN')) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; die(); } [/align]&nbsp; [/align]require_once(dirname(__FILE__) . '/base/Constants.php'); require_once(dirname(__FILE__) . '/base/Template.php'); require_once(dirname(__FILE__) . '/base/TemplateCache.php'); [/align]&nbsp; [/align]$action = $_GET['action']; [/align]&nbsp; [/align]$globalTemplate = new Template('index'); $output = ''; [/align]&nbsp; [/align]switch ($action) { [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * ---------------------- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * hf,jnf c ajnjuhfabzvb &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * ---------------------- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */ [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'add_pics': &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'edit_pic': &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $workId = intval($_GET['work']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $id = intval($_GET['id']); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Work.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work = Work::getById($workId); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$work) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Работы СЃ указанным идентификатором РЅРµ существует.&lt;/h1&gt; EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Picture.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($id == 0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;&amp; isset($_POST['id']) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $id = intval($_POST['id']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($id &gt; 0) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pic = Picture::getById($id); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $title = 'Редактирование'; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pic = Picture::create(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $title = 'Р&amp;#8219;обавление РЅРѕРІРѕРіРѕ'; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!isset($_POST['do'])) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;{$title} изображения РІ работу [{$work-&gt;getName()}]&lt;/h1&gt; [/align]&nbsp; [/align]EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($id &gt; 0) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;form method="post" action="?action={$action}&amp;work={$work-&gt;getId()}"&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;img src="../{$pic-&gt;getWebPictureThumbnail()}" /&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;form enctype="multipart/form-data" method="post" action="?action={$action}&amp;work={$work-&gt;getId()}"&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for="image"&gt;Файл фотографии:&lt;/label&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="file" name="image" id="image" /&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for="description"&gt;Описание:&lt;/label&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="text" name="description" id="description" value="{$pic-&gt;getDescription()}" /&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="hidden" name="id" value="{$pic-&gt;getId()}" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="hidden" name="work" value="{$work-&gt;getId()}" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="hidden" name="do" value="do" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="submit" value="готово" /&gt; &lt;/form&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pic-&gt;setWork($work-&gt;getId()); [/align]&nbsp; [/align] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (isset($_FILES['image'])) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Group.php'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $group = Group::getById($work-&gt;getId()); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $result = DB::selectQuery('SELECT COUNT(*) as pcount FROM w_pictures WHERE work_id = ' . $work-&gt;getId()); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $row = $result-&gt;fetchRow(); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $num = $row['pcount']; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pic-&gt;setPhotoFromForm($_FILES['image'], $group-&gt;getName() . ' ' . $work-&gt;getName() . ' ' . $num++); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $description = htmlentities($_POST['description'], ENT_QUOTES, 'utf-8'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pic-&gt;setDescription($description); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($pic-&gt;save()) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_WORK . $work-&gt;getId()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_PICTURE . $pic-&gt;getId()); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;{$title} изображения РІ работу [{$work-&gt;getName()}] успешно завершено&lt;/h1&gt; [/align]&nbsp; [/align]&lt;p&gt;Вернуться РІ &lt;a href="?action=pictures&amp;work={$work-&gt;getId()}"&gt;СЃРїРёСЃРѕРє фотографий&lt;/a&gt;.&lt;/p&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'del_pic': &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $id = intval($_GET['id']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $workId = intval($_GET['work']); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Picture.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pic = Picture::getById($id); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$pic) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Изображения СЃ таким идентификатором РЅРµ существует.&lt;/h1&gt; EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($pic-&gt;delete()) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_WORK . $workId); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_PICTURE . $pic-&gt;getId()); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Изображение успешно удалено.&lt;/h1&gt; [/align]&nbsp; [/align]&lt;p&gt;Вернуться РІ &lt;a href="?action=pictures&amp;work={$workId}"&gt;СЃРїРёСЃРѕРє фотографий работы&lt;/a&gt;.&lt;/p&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'pictures': [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $groupId = intval($_GET['group']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $workId = intval($_GET['work']); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Work.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work = Work::getById($workId); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$work) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Работы СЃ указанным идентификатором нет.&lt;/h1&gt; [/align]&nbsp; [/align]&lt;p&gt;Вернуться РІ &lt;a href="?action=works&amp;group={$groupId}"&gt;СЃРїРёСЃРѕРє работ РіСЂСѓРїРїС‹&lt;/a&gt;.&lt;/p&gt; EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;РЎРїРёСЃРѕРє фотографий для работы [{$work-&gt;getName()}]&lt;/h1&gt; &lt;hr /&gt; EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Picture.php'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/base/DBCollection.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pics = new DBCollection(Picture::create(), 'WHERE work_id = ' . $workId); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach($pics-&gt;getList() as $pic) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;p&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;a href="?action=edit_pic&amp;id={$pic-&gt;getId()}&amp;work={$workId}" title="редактировать"&gt;&amp;nbsp;v&amp;nbsp;&lt;/a&gt; &amp;nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;a href="?action=del_pic&amp;id={$pic-&gt;getId()}&amp;work={$workId}" title="удалить" onclick="return confirm('Точно?');"&gt;&amp;nbsp;x&amp;nbsp;&lt;/a&gt; &amp;nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | &amp;nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;img src="../{$pic-&gt;getWebPictureThumbnail()}" /&gt; &lt;/p&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($pics-&gt;getCount() == 0) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;p&gt;РџРѕРєР° пусто&lt;/p&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;hr /&gt; &lt;p&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;a href="?action=add_pics&amp;work={$workId}"&gt;Р&amp;#8219;обавить&lt;/a&gt; | &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;a href="?action=works&amp;group={$groupId}"&gt;Вернуться РІ СЃРїРёСЃРѕРє работ&lt;/a&gt; &lt;/p&gt; EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * ---------------------- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * РАБОТА РЎ РАБОТАМИ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * ---------------------- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */ [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'del_work': &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $id = intval($_GET['id']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $groupId = intval($_GET['group']); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Picture.php'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/base/DBCollection.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pics = new DBCollection(Picture::create(), 'WHERE work_id = ' . $id); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($pics-&gt;getCount() &gt; 0) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Р’ работе существуют фотографии. Сначала удалите РёС….&lt;/h1&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Work.php'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work = Work::getById($id); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$work) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Работы СЃ указанным идентификатором РЅРµ существует.&lt;/h1&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($work-&gt;delete()) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_WORK . $work-&gt;getId()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_INDEX); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Работа [{$work-&gt;getName()}] успешно удалена.&lt;/h1&gt; [/align]&nbsp; [/align]&lt;p&gt;Вернуться РІ &lt;a href="?action=works&amp;group={$groupId}"&gt;СЃРїРёСЃРѕРє работ РіСЂСѓРїРїС‹&lt;/a&gt;.&lt;/p&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'add_work': &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'edit_work': &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $id = intval($_GET['id']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $group_id = intval($_GET['group']); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Group.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $group = Group::getById($group_id); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$group) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;Р&amp;#8219;СЂСѓРїРїС‹ СЃ указанным идентификатором РЅРµ существует.&lt;/h1&gt; &lt;p&gt;Вернуться РІ &lt;a href="index.php"&gt;СЃРїРёСЃРѕРє РіСЂСѓРїРї&lt;/a&gt;.&lt;/p&gt; EOF; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($id == 0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;&amp; isset($_POST['id']) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $id = intval($_POST['id']); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Work.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($id &gt; 0) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work = Work::getById($id); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $title = 'Редактирование'; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work = Work::create(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $title = 'Р&amp;#8219;обавление РЅРѕРІРѕР№'; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!isset($_POST['do'])) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;{$title} работы (РіСЂСѓРїРїР° [{$group-&gt;getName()}])&lt;/h1&gt; [/align]&nbsp; [/align]&lt;form method="post" action="?action=edit_work&amp;group={$group-&gt;getId()}"&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for="name"&gt;Название:&lt;/label&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="text" name="name" id="name" size="50" value="{$work-&gt;getName()}" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for="link"&gt;Ссылка:&lt;/label&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="text" name="link" id="link" size="60" value="{$work-&gt;getLink()}" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for="description"&gt;Описание:&lt;/label&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;textarea id="description" name="description" cols="70" rows="5"&gt;{$work-&gt;getDescription()}&lt;/textarea&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="hidden" name="id" value="{$work-&gt;getId()}" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="hidden" name="do" value="do" /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br /&gt; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="submit" value="готово" /&gt; &lt;/form&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $name = htmlentities($_POST['name'], ENT_QUOTES, 'utf-8'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $description = htmlentities($_POST['description'], ENT_QUOTES, 'utf-8'); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $link = $_POST['link']; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work-&gt;setName($name); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$work-&gt;getDate()) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work-&gt;setDate(time()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work-&gt;setLink($link); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work-&gt;setDescription($description); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $work-&gt;setGroup($group-&gt;getId()); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($work-&gt;save()) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_INDEX); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TemplateCache::drop(Constants::CACHE_WORK . $group-&gt;getId()); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $output .= &lt;&lt;&lt;EOF &lt;h1&gt;{$title} работы [{$work-&gt;getName()}] РІ РіСЂСѓРїРїРµ [{$group-&gt;getName()}] успешно завершено&lt;/h1&gt; [/align]&nbsp; [/align]&lt;p&gt;Вернуться РІ &lt;a href="?action=works&amp;group={$group-&gt;getId()}"&gt;СЃРїРёСЃРѕРє работ РіСЂСѓРїРїС‹&lt;/a&gt;.&lt;/p&gt; EOF; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break; [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'works': [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $groupId = intval($_GET['group']); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; require_once(dirname(__FILE__) . '/objects/Group.php'); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $group = Group::getById($groupId); [/align]&nbsp; [/align]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!$group) { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
Post #: 516
RE: Вопросы по PHP (для новичков) - 2009-02-11 17:41:58.623333   
LadyVamp

Сообщений: 3
Оценки: 0
Присоединился: 2009-02-11 14:37:10.396666
- не в коде как то само здесь вставилось[:(]
Post #: 517
RE: Вопросы по PHP (для новичков) - 2009-02-12 00:02:08.223333   
UDO

Сообщений: 435
Оценки: 0
Присоединился: 2008-12-04 00:55:31.380000
Вот появился вопросик… подскажите плиз
есть например значение переменной $a
$a = "123;456"
как сделеть так чтобы это значение разделилось на 2 части до знака ; в одну переменную, а после знака ; в другую
чтобы было вот так (длина и значение $a разные)
$b = "123"
$c = "456"
Post #: 518
RE: Вопросы по PHP (для новичков) - 2009-02-12 03:26:20.586666   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
$t = explode(";",$a);
$b = $t[0];
$c = $t[1];
echo "$b\n";
echo "$c\n";
Post #: 519
RE: Вопросы по PHP (для новичков) - 2009-02-12 10:38:16.003333   
UDO

Сообщений: 435
Оценки: 0
Присоединился: 2008-12-04 00:55:31.380000
Спасиба Pashkela помог реально++
Post #: 520
Страниц:  1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
Все форумы >> [Веб-программинг] >> RE: Вопросы по PHP (для новичков)







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.