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

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


Сообщения - Босc всех зон

Страницы: [1]
1
PHP / include
« : 10 Декабря 2004, 12:48:58 »
- это коментарии в HTML, они отображаться в броузере и не должны.

2
PHP / Техника
« : 19 Ноября 2004, 13:47:34 »
Цитировать
НО НИКАК НЕ ДЛЯ НАПИСАНИЕВ СКРИПТОВ. Бред!

Раз это твоё мнение, скромнее надо писать.
PEAR наверное тоже бред.

3
quest
тебе научиться надо или готовенькое получить?

если готовое то ты ошибся форумом, а если научиться то:
1. получаешь список файлов по нужной маске ф-цией [p]glob[/p]
2. считаешь количество файлов [p]sizeof[/p]
3. генеришь случайное число [p]rand[/p] от 0 до sizeof($files)-1
4. читаешь файл ф-цией [p]file_get_contents[/p] с именем $files[случайное_число] и показываешь его.

p.s. glob и file_get_contents появились в версии 4.3.0

4
PHP / Помогите с ООП
« : 03 Ноября 2004, 15:03:47 »

class Photo
{
  var 
$name = \'name\';
  var $path = \'path\';
  
  function Photo() { /* Constructor */ }
}

$photo =& new Photo;
var_dump($photo->path);


Неужто не выводится?
Есть такая вещь - отладка!

5
PHP / Помогите с ООП
« : 01 Ноября 2004, 21:30:46 »
2 Макс

Сам использую репозиторий объектов. Удобно.
Но терзают какие-то непонятные сомнения насколько это правильно :)

Мне кажется, читая код сложно понять где Аргегация, а где Композиция объектов должна быть. То-есть абсолютно не задумываемся как же нужный объект должен оказаться в классе: то-ли передавать как ссылку, то-ли создавать его в нём, а просто берём из репозитория и всё. И как бы теряется какой-то шаг проектирования.

Ты UML диаграмки классов рисуешь?

Цитировать
Работа с этим классом основана на статических переменных - это фича ПХП5


Но можно и на 4-ой версии сделать репозиторий (правда ущербный :) )

6
PHP / PHP и CSS - правильный подход
« : 22 Октября 2004, 14:10:35 »
Эх. ну что ты будешь делать. :)
Алгоритм (это не рабочий код):

$item_current 
= \'news\'; // у тебя берётся из урла
foreach ($menu_items as $item) {
  $style = ($item_current == $item) ? \'подсвечивать\' : \'не подсвечивать\';
  ....
}

ясно?

Ты  знаешь какой пункт меню тебе нужно подсветиь.
В цикле ты _по очереди_ выводишь все свои пункты меню.
Так и сравнивай текущий пункт что ты выводишь с названием того который нужно выделить. Если совпадают ставь один стиль (с выделением) если не совпадают ставь другой стиль (без оного).

Может с 18 раза поймёшь.

7
Ты хочешь передавать ему данные которые он будет рисовать?

Если так, то имхо, идея не правильная.
image.php должен их не из get\'а получать, а конектиться к базе, читать файл или где у тебя эти данные лежат. А никаких массивов передавать не надо.

8
PHP / yandex,rambler и т.д.
« : 10 Октября 2004, 01:17:50 »
Hint. Обрати внимание на второй необязательный параметр parse_str.

9
alm, cпасибо.

работает такой вариант:



<SCRIPT LANGUAGE="JavaScript1.2">

  
myRe=/<tr>(.*?)<\\\\/tr>/gi;
  
str "<tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr>";
  while (
myArray myRe.exec(str)) {
    
alert(myArray[1]);
  }
</SCRIPT>

10
Код:


<SCRIPT LANGUAGE="JavaScript1.2">
myRe=/<tr>(.*)<\\/tr>/i;
str "<tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr>";
myArray myRe.exec(str);
alert(myArray[1]);
</SCRIPT>


Результат работы массив вида:
  • => "1234"
  • [1] => "1234"

    Но хотелось бы получить массив из 3-х элементов:

  • => "1234"
  • [1] => "12"
    [2] => "34"

    есть ли модификатор "жадности" в js (аналог U в php) ?

11
PHP / Вырезать html коментарии
« : 23 Марта 2004, 12:45:39 »
Хм, наверное я где-то ошибаюсь но цитата из мана:
Цитировать
... Утверждения касательно последующего текста начинаются с (?= для положительных утверждений и с (?! для отрицающих утверждений. Например, \\w+(?=;) совпадает со словом, за которым следует символ \';\', но при этом сама точка с запятой в совпадение не включается. А foo(?!bar) соответствует любому появлению "foo", после которого не идёт "bar". ...


Проблему решил так:

  $text 
preg_replace("/(<script[^>]*>\\\\s*)(<!--)(.*)(-->)(\\\\s*<\\\\/script>)/isU""\\\\\\1[#COMMENT#]\\\\\\3[/#COMMENT#]\\\\\\5"$text);
 
$text preg_replace("/<!--.*-->/isU"""$text);
  
$text str_replace(array("[#COMMENT#]""[/#COMMENT#]"), array("<!--""-->"), $text);


так как вариант с callback\'ом почти на порядок медленнее (странно, думал наоборот)


  
function _callback($arr)
  {
     if (empty(
$arr[1])) {
       
$ret = \'\';
     } else {
       $ret = $arr[0];
     }
     return $ret;
  }

  $text = preg_replace_callback("/(<script[^>]*>\\\\s*)?(<!--)(.*)(-->)(\\\\s*<\\\\/script>)?/isU", "_callback", $text);

12
PHP / Вырезать html коментарии
« : 22 Марта 2004, 20:08:26 »
Да, пробел и я не вставлял. И кстати слеш перед перед /script> тоже стоял, может форум проглотил.

Действительно модификатор m не нужен.

Если просто описать задачу не привязываясь к данному конкретному случаю, то нужно заменить часть текста, после которой не идёт определённая последовотельность символов.
Хочется знать для общего развития как это можно сделать одним регом. А не несколькими или callback\'ом

Тесты:

$text 
"
  <script>
   //<!--
    var = 1;
   //-->
  </script>
  <body ....>
  <!--
    #comments
  -->
  other html content
"
;
echo 
preg_replace("/<!--.*-->\\\\s*(?!<\\\\/script>)/isU"""$text);


Результат:

 
 
 
  other html content

13
PHP / Вырезать html коментарии
« : 22 Марта 2004, 18:40:21 »
Нужно вырезать HTML коментарии.

Проблема в конструкции , где их вырезать не нужно.

Это Синтаксис регулярных выражений читал вдумчиво 3 раза :)

Шаманил с "Утверждениями" $text preg_replace("/<!--.*-->(?!<\\/script>)/imsU"""$text);
но нормального результата так и не добился.

Сейчас сделал через preg_replace_callback хотя думаю можно сделать одним регом, подскажите :)

14
PHP / Вопрос про диалоговое окно
« : 20 Марта 2004, 01:10:50 »
Хотелось бы для себя прояснить такой момент:

В схеме описанной tony2001 (думаю её почти все используют), не сказано ничего о ситуации когда нужно всё таки показать введённые пользователем данные.

Вопрос как лучше сделать?

- Передавать GET\'ом в header(...) - как-то криво, ЧПУ и все дела;
- Выводить в том же скрипте без редиректа - нужно заморачиваться с проверкой на рефреш страницы;
- Писать в сессию, самый простой вариант конечно (сейчас начнётся :))  "Сессии тяжёлый механизм, не для того придуман и т.д.")

p.s. данные в базу не пишутся.
p.p.s. речь идёт не об админке, где такое редко когда нужно.

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