Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как передать значение
 
 автор: Port_Artur   (13.01.2010 в 23:40)   письмо автору
 
 

есть файл типа .inc - видимо шаблон
в нём строка:
 <td ><a href="{url}" target="_blank" class="menu2" target="_blank"><strong>{name}</strong></a></td>


вместо {url} в результате на экране браузера на странице в ссылке появляется адрес

Вопрос: как в том же самом файле .inc
передать это значение - {url} - в PHP

Т.е. сразу за верхним кодом разместить PHP и передать ему {url}??????
     <?php
                      
if (file_exists("{url}/favicon.ico"))
                      {
                           echo 
"<img src=\"{url}/favicon.ico\" width=16 height=16 border=0>";
                           }
                           
?>


Так как сейчас не работает. Подскажите как правильно?

  Ответить  
 
 автор: Николай2357   (14.01.2010 в 00:35)   письмо автору
 
   для: Port_Artur   (13.01.2010 в 23:40)
 

Вряд ли кто ответит, потому что не понятно на что отвечать... Где вопрос то?
Вы передаете GET параметром одно, фрагменть обработчика приводите другой...
Подозреваю, что Вам непонятен сам принцип того, чего Вы хотите добиться.

Готов потратить кучу времени на то, чтобы привести Ваш код в порядок.
И так, что Вам хотелось бы получить в идеале?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 00:41)   письмо автору
 
   для: Николай2357   (14.01.2010 в 00:35)
 

А по-моему, все предельно ясно. Но я бы правда побоялся браться помогать, объясню почему.
Судя по всему, тут используется некая система шаблонов (что именно - автор, видимо, не знает, иначе бы сразу упоминул). Соответственно, надо объяснить человеку, что ему надо найти код, который обрабатывает шаблон, и там искать, какой переменной заменяется {url}. Ну и в приведенном пхп коде использовать эту переменную, а не эелмент шаблона, как предлагает автор темы.

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 00:59)   письмо автору
 
   для: neadekvat   (14.01.2010 в 00:41)
 

Знаю т.к. написал об этом ещё в первой строчке. Пременную я нашёл, но почему-то код PHP не работает в нём, даже если исправить его на .php Он также и отображается в исходном коже страницы открытой в браузере.

<td align="center">

                      <?php
                      $favicon
=$rw["site_url"]."/favicon.ico";
                      if (
file_exists($favicon))
                      {
                           echo 
"<img src=\"$favicon\" width=16 height=16 border=0>";
                           }
                           
?>

                      </td>


Почему?

  Ответить  
 
 автор: Trianon   (14.01.2010 в 05:16)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 00:59)
 

Потому что корень документов http и корень сервера - разные вещи.

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 08:15)   письмо автору
 
   для: Trianon   (14.01.2010 в 05:16)
 

Что значит разные.

У меня переменная $favicon получется равной http://domen.ru/favicon.ico (эта иконка реально существует по данному адресу - проверял и не раз)

Вопрос, почему не работает условие. Пишу уже в файле .php и вставляю в шаблон..

Но у меня почему то не выполняется условие! Вопрос почему?


 <?php
....
$fav="&nbsp;&nbsp;&nbsp;";

                      
$favicon=$rw["site_url"]."/favicon.ico";

                      if (
file_exists($favicon))
                      {
                           
$fav="<img src=\"$favicon\" width=16 height=16 border=0>";
                           }
     
$xtpl->assign("fav"$fav);
.....
?>



Должна иконку отобразить, а она мне 3 пробела рисует.
Почему?

  Ответить  
 
 автор: GeorgeIV   (14.01.2010 в 10:00)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 08:15)
 

вам же уже Trianon подсказал выше. научитесь все таки мануал читать, хотя бы по используемым функциям

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 10:20)   письмо автору
 
   для: GeorgeIV   (14.01.2010 в 10:00)
 

Честно говоря, извините, но я не пойму о чём вы хотите мне втолковать. Где у меня не правильно. или хоть дайте ссылку где прочесть. Я не пойму про что нужно прочесть. Про функцию, так она так и работает. Ничего не понял, где я напортачил. Если можно ткните носом.

  Ответить  
 
 автор: GeorgeIV   (14.01.2010 в 13:00)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 10:20)
 

http://domain.ru/favicon.ico и /usr/home/www/webroot/favicon.ico - это разные вещи, а вы пытаетесь одну подменить другой.
PS пути условны ( на всякий случай)

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 13:18)   письмо автору
 
   для: GeorgeIV   (14.01.2010 в 13:00)
 

Нет! Cтоп!

Иконка лежит по адресу http://domain.ru/favicon.ico. Я проверял - она отображается.

Её же существование я проверяю и в скрипте. Где у меня идёт подмена о кототоый вы пишите?
Или вы что-то путаете или я настолько запутался, что вас не понимаю.

Скрипт что делает - проверяет , если файл иконки существует - отобразить её в виде изображения.

Как тогда должен выглядеть скрипт?

  Ответить  
 
 автор: Trianon   (14.01.2010 в 16:32)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 13:18)
 

Иконка не лежит по этому адресу. Иконка доступна по этому адресу. Доступна браузеру. Но никак не скрипту.

Лежит она по адресу /usr/home/www/webroot/favicon.ico в пространстве файловой системы того компьютера, на котором лежит.

Скрипту, вернее серверному процессу, который работает на том же компьютере, она доступна именно по тому адресу, где лежит.

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 18:15)   письмо автору
 
   для: Trianon   (14.01.2010 в 16:32)
 

И как мне быть? Мне нужно напротив сайтов проставить их иконки а делать это вручную в мир прогресса неохота.
Что делать?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 18:29)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 18:15)
 

А вот так не судьба?
if (file_exists('path/to/favicon/favicon.ico'))
{
$fav="<img src=\"$favicon\" width=16 height=16 border=0>";
}

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 18:44)   письмо автору
 
   для: neadekvat   (14.01.2010 в 18:29)
 

path/to/favicon/

А это к чему?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 18:50)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 18:44)
 

С английским не дружем, да?
там абсолютный путь до картинки. Можно использовать $_SERVER

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 18:57)   письмо автору
 
   для: neadekvat   (14.01.2010 в 18:50)
 

У меня есть.

Адрес сайта:

http://domain.ru/

как мне из него взять иконку?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 19:00)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 18:57)
 

Да причем тут адрес сайта? Вы проверяете существование ФАЙЛА иконки, а значит работать надо с файловой системой, а не с адресмо сайта.

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 19:05)   письмо автору
 
   для: neadekvat   (14.01.2010 в 19:00)
 

ну напишите реальный пример к реальному сайту, чтоб наконец понял как мне это реалтизовать. Откуда я знаю кто и где хранит эти favicon? И как тогда узнать путь для сервера?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 19:19)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 19:05)
 

Я написал. Выше.
Что значит "откуда я знаю"? Вы делаете сайт или кто?

  Ответить  
 
 автор: sim5   (14.01.2010 в 19:33)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 19:05)
 

Вы пытаетесь вывести иконку у ссылки своего сайта, либо речь о стороннем сайте?

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 19:41)   письмо автору
 
   для: sim5   (14.01.2010 в 19:33)
 

идёт речь об иконках сторонних сайтов. конечно я знаю где моя лежит, что я совсем неуч что-ли.
Как с другими сайтами быть?

  Ответить  
 
 автор: sim5   (14.01.2010 в 19:48)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 19:41)
 

Узнать путь к ней, который прописан в head страницы.

PS. Да, file_exists не подойет для проверки удаленных файлов.

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 20:04)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 19:41)
 

И какого лешего тогда в первом посте представляется код из шаблона, если речь о сторонних сайтах?

  Ответить  
 
 автор: sim5   (14.01.2010 в 20:06)   письмо автору
 
   для: neadekvat   (14.01.2010 в 20:04)
 

Пусть постарается заглянуть в link rel="icon", чтобы понять, что они в корне сайта лежат :)

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 20:07)   письмо автору
 
   для: neadekvat   (14.01.2010 в 20:04)
 

шаблон мой и в него нужно встроить иконки сторонних сайтов - вот зачем

Какой путь искать, если многие даже не пишут его в исходнике страниц. Он у всех обычно лежит в корневике сайта как и меня и не где я путь не указываю, хотя Яндекс его и Брузеры кушают и прекрасно.

  Ответить  
 
 автор: sim5   (14.01.2010 в 20:14)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 20:07)
 

Посмотрите: http://softtime.ru/favicon.ico

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 20:23)   письмо автору
 
   для: sim5   (14.01.2010 в 20:14)
 

Ну увидел и что?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 20:26)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 20:23)
 

file_get_contents - чтите мануал, должно помочь.

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 20:43)   письмо автору
 
   для: neadekvat   (14.01.2010 в 20:26)
 

и зачем мне содержимое (код) файла .ico?
Именно его я смогу получить используя file_get_contents
Что мне с ним делать, я даже не знаю его формат

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 20:45)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 20:43)
 

Какой еще формат?
Эта фунция либо вернет картинку, либо не вернет. Если вернет - то, о чудо, она есть! А если не вернет ( false) то..вы не поверите..она отсутствует!

  Ответить  
 
 автор: Port_Artur   (14.01.2010 в 20:52)   письмо автору
 
   для: neadekvat   (14.01.2010 в 20:45)
 

О чудо - она есть!

Спасибо так работает!

Не понятно почему file_exists не работает?

  Ответить  
 
 автор: neadekvat   (14.01.2010 в 21:01)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 20:52)
 

Читаем мануал:
bool file_exists ( string $filename )
Parameters:
filename: Path to the file or directory.
Разницу между путем и url видите, я надеюсь

  Ответить  
 
 автор: sim5   (15.01.2010 в 04:06)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 20:52)
 

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

  Ответить  
 
 автор: easywind   (17.01.2010 в 00:07)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 20:52)
 

>О чудо - она есть!
>Спасибо так работает!
> Не понятно почему file_exists не работает?
Работает только на сервере где запущен скрипт. Проверять есть ли файл на чужом сервере она не может. Тебе правильно сказали.

  Ответить  
 
 автор: Trianon   (14.01.2010 в 23:14)   письмо автору
 
   для: Port_Artur   (14.01.2010 в 18:15)
 

Что делать?
Если подходить по уму - всё же придется понять в чем отличие, и где общность.

Как только поймете - сразу определитесь с тем, как исправлять.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования