Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Веб-программирование > PHP
Перезагрузить страницу Очередные непонятки...
Ответ
 
Опции темы Опции просмотра
  (#31 (permalink)) Старый
SiMM SiMM вне форума
Member
 
Сообщений: 1,961
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.08.2003
По умолчанию 23.09.2004, 11:44

[quote]что значит знак [b]=
PS: код оформлен безобразно - я так понимаю, производилась неудачная попытка "шаблонизации", для таких целей (не шаблонизации, а того, что делается в скрипте) вообще-то существует implode
Ответить с цитированием
  (#32 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 23.09.2004, 12:12

Код писал не я, мне надо его переписатьв удобную для себя форму

Спасибо за разъяснение насчет равенства... Теперь все ясно, переписать его не так уж и трудно будет
Ответить с цитированием
  (#33 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 25.09.2004, 14:56

Немного запутался...
Есть функция fc_build_user()
Внутрь её надо встроить html...
Конструкция вида fc_build_user(."1".) ясен пень не пашет
Встраивать нужно обязательно html код
Ответить с цитированием
  (#34 (permalink)) Старый
SiMM SiMM вне форума
Member
 
Сообщений: 1,961
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.08.2003
По умолчанию 25.09.2004, 15:03

Цитата:
Originally posted by Monah IRH
[b]Конструкция вида fc_build_user(."1".) ясен пень не пашет
Теперь забудь о своей проблеме (как будто у тебя её никогда не было), перечитай то, что написал и подумай на тему - тебе понятно, что нужно вопрошавшему? А теперь подумай и задай вопрос так, чтобы любой непосвящённый понял о чём речь.
Ответить с цитированием
  (#35 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 25.09.2004, 18:13

ага, ты прав...
Скажем так...

1. Есть текст загнанный в переменную $text
2. Есть код:

Код:
function get_code($code) {
$result = $code;
return($result);
}

$bbcodes = array(
'
Код HTML:
([A-z0-9_. ]+)
' => "1", '
PHP код:
([A-z0-9_. ]+) 
' => get_code("1"), ); // Ну а потом идет код замены промежутков внутри тегов и в переменной $text
Так вот. Функция get_code в массиве не передает значение добытое из рег. выражения При этом же то, что между тегов отлично передается и выводится...

P.S. Пример составлял сам, код немного другой...
Ответить с цитированием
Ads.
  (#36 (permalink)) Старый
SiMM SiMM вне форума
Member
 
Сообщений: 1,961
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.08.2003
По умолчанию 25.09.2004, 18:47

Потому что getcode вызывается в момент создания массива с параметром '1', а не в момент, когда ты куда-то подсунешь этот массив (пример надо приводить во-первых, рабочий, во-вторых - полностью, в-третьих - раскрывающий суть проблемы - т.е. на входе то-то и то-то, на выходе то-то и то-то, а ожидалось - то-то и то-то). Попытавшись проявить телепатические способности, могу лишь послать в ман по PCRE на предмет изучения модификатора e
PS: и на будущее - не надо описывать этап решения задачи - надо описывать саму задачу.
Ответить с цитированием
Ads
  (#37 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 25.09.2004, 21:54

Работающий код к сожалению я практически никогда не могу показать, т.к. он интегрированн в движок...
Единственное, что можно, так это весь движок давать смотреть...
Ответить с цитированием
  (#38 (permalink)) Старый
SiMM SiMM вне форума
Member
 
Сообщений: 1,961
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.08.2003
По умолчанию 26.09.2004, 00:35

Цитата:
Originally posted by Monah IRH
[b]Работающий код к сожалению я практически никогда не могу показать, т.к. он интегрированн в движок... :cry:
Неправда. Всегда можно выделить из кода небольшую часть, проинициализировав входные данные так, чтобы код не работал ожидаемым образом.
Цитата:
Единственное, что можно, так это весь движок давать смотреть... :wink:
А вот это излишне - если у тебя проблемы с PCRE - при чём здесь базы данных? Или выводимый HTML? Учись выделять проблемные места коротко и ясно.
Ответить с цитированием
  (#39 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 30.10.2004, 17:22

Итак поднимаю топик снова вверх

Сейчас работаю над одной интересной для меня вещью и возник вопросик:

Есть файл вида:
Код:
file|имя_файла|folder|директория|
file|имя_файла2|folder|директория2|
Есть код:

Код:
 $filename = "tmp/trash.php";
 $plugfolder = @$_POST['plug_name'];
 $con = file($filename);
 for ($i = 0; $i < count($con); $i++) {
    $m = explode("|", $con[$i]);
    if ($m[1]!="nofile" && $m[3]!="nofolder") {
      $file = $m[1];
      $folder = $m[3];
      $folder = str_replace(" ", "", $folder);
      $ffolder = "../../".$folder;
      $fsfolder = "../output/".$plugfolder;
      if (!file_exists($fsfolder)) { mkdir($fsfolder, 0755); }
      if (!file_exists($fsfolder."/".$file)) {
      copy($ffolder."/".$file, $fsfolder."/".$file);
      }

    }
 }
На самом дел он тут не суть так важен...
А вот теперь вопрос сам как таковой:
В переменную $m[3] попадает значение директории файла, она может быть как просто plugins, так и plugins/admin/print и вот тут возникает проблема. Условие существование папки проверяет существует ли оная в конечном виде: if (!file_exists($fsfolder)) { mkdir($fsfolder, 0755); } ($fsfolder это конечная папка) и если она не существует, то создает её. Проблемы не возникнет если будут существовать ВСЕ папки кроме конечной, но если не существует к примеру двух последних, то скрипт не выполнится и выскочит сообщение об ошибке (что-то типа Can't make dir: No such file)...
Я пытался разбивать получаемый адрес директории с помощью explode, с помощью рег. выражений, но как я понял это по крайней мере бесполезно...
Наконец дошли до самого вопроса Какими ещё способами можно разбить адрес на папки и создать каждую отбитую из адреса внутри предыдущей?
Ответить с цитированием
  (#40 (permalink)) Старый
buzi buzi вне форума
Member
 
Сообщений: 367
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.07.2004
По умолчанию 30.10.2004, 18:29

explode()

результат explode - массив - будет отсортирован в смысле иерархии папок.. проверяешь на существование нулевой элемент массива.. если существует - делаешь chdir и проверяешь следующий.. в противном случае создаешь папку и делаешь chdir в неё.. и так до конца массива..
Ответить с цитированием
  (#41 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 30.10.2004, 18:58

Тоесть твоя идея такая?

Код:
...
$m = explode("|", $con[$i]);
for($ii=0; $ii<strlen($m[3]); $ii++){
$n = explode("/", $m[3]); 
 if($n[$ii]){
   if (!file_exists($n[$ii])) { mkdir($fsfolder, 0755); } 
 }
 elseif($n[$ii+1]){
   if (!file_exists($n[$ii]."/".$n[$ii+1])) { mkdir($fsfolder, 0755); } 
 }
 /* и т.д. */
}
...
Я не пробовал, но думаю работать не будет
Ответить с цитированием
  (#42 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 30.10.2004, 22:26

Все, разобрался... Я не правильно указывал на элементы массива...
Гуд. Теперь остается додуматься, как автоматизировать этот процесс)))
Ответить с цитированием
  (#43 (permalink)) Старый
buzi buzi вне форума
Member
 
Сообщений: 367
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.07.2004
По умолчанию 01.11.2004, 19:39

Цитата:
Originally posted by Monah IRH
[b]Тоесть твоя идея такая?

Код:
...
$m = explode("|", $con[$i]);
for($ii=0; $ii<strlen($m[3]); $ii++){
$n = explode("/", $m[3]); 
 if($n[$ii]){
   if (!file_exists($n[$ii])) { mkdir($fsfolder, 0755); } 
 }
 elseif($n[$ii+1]){
   if (!file_exists($n[$ii]."/".$n[$ii+1])) { mkdir($fsfolder, 0755); } 
 }
 /* и т.д. */
}
...
Я не пробовал, но думаю работать не будет :roll:
не совсем так.. проще было бы написать рекурсивную функцию..
Ответить с цитированием
  (#44 (permalink)) Старый
Monah IRH Monah IRH вне форума
Member
 
Сообщений: 404
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 25.11.2003
По умолчанию 01.11.2004, 20:15

Уже сделал, плохенько конечно, но сделал...
Сделал похоже, но не так
Коряво, но работает и это меня радует, если интересуешься, то могу предоставить код...
Ответить с цитированием
  (#45 (permalink)) Старый
buzi buzi вне форума
Member
 
Сообщений: 367
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.07.2004
По умолчанию 04.11.2004, 13:41

если уж это я подсказал тебе как делать - то зачем мне твой корявый код? )
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Непонятки с вложениями 2ramses О сайте и форуме 4 09.02.2012 10:03
Непонятки с дровами Лавр Любые вопросы от новичков 7 10.11.2011 20:32
Непонятки phyhoz163 Охлаждение и разгон 2 07.09.2011 14:48
Очередные ферзи. 4upuk Prolog 22 20.04.2011 20:48
непонятки с USB black_a Любые вопросы от новичков 1 17.12.2010 07:33
Непонятки.... ir_ir Любые вопросы от новичков 1 22.09.2010 03:10
непонятки с Fly B600. dark Ремонт 10 20.11.2008 12:31
ATI FirePro: очередные "профессионалы" от AMD VipeR Процессоры 18 29.09.2008 22:55
Непонятки с компом Sanek_77 Техническая поддержка 17 25.09.2007 14:34
Непонятки с AMD Turion 64 x2 rjav Ноутбуки 1 22.04.2007 23:55
Непонятки с iconv Maddoctor PHP 2 25.10.2006 20:32



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов