Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не работает ссылка на файл пхп

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Golovastik
Отправлено: 04 Сентября, 2010 - 15:57:58
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




В правой части навигации сайта, есть пункт называется - "Пункт1".

Не могу сослаться от него на файл videolessons.php который лежит в папке blocks.

Выдаёт такие ошибки.
CODE (text):
скопировать код в буфер обмена
  1.  
  2. Warning: main(blocks/header.php): failed to open stream:
  3. No such file or directory in z:\home\sitik.ru\www\blocks\videolessons.php on line 15
  4.  
  5. Warning: main(): Failed opening 'blocks/header.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\sitik.ru\www\blocks\videolessons.php on line 15
  6.  
  7. Warning: main(blocks/kontent.php): failed to open stream:
  8. No such file or directory in z:\home\sitik.ru\www\blocks\videolessons.php on line 19
  9.  
  10. Warning: main(): Failed opening 'blocks/kontent.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\sitik.ru\www\blocks\videolessons.php on line 19
  11.  
  12. Warning: main(blocks/footer.php): failed to open stream: No such file or directory in z:\home\sitik.ru\www\blocks\videolessons.php on line 23
  13.  
  14. Warning: main(): Failed opening 'blocks/footer.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\sitik.ru\www\blocks\videolessons.php on line 23
  15.  


Пробовал уже по разному писать не выходит.
Архив вложил.
http://www[dot]sharemania[dot]ru/0198776
(Добавление)
1)/blocks/videolessons.php
2)blocks/videolessons.php
3)../blocks/videolessons.php
4)../../blocks/videolessons.php

Ни какой вариант не работает.
 
 Top
blick
Отправлено: 04 Сентября, 2010 - 16:38:52
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Окт. 2009  
Откуда: Украина


Помог: 0 раз(а)




Ты правильно ссылаешься на videolessons.php. Ошибка в самом файле block/videolessons.php.
Там неправильно указаны пути в инструкции include:

Правильно так:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head><title>Видео</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  6. <meta name="description" content=" ">
  7. <meta name="keywords" content=" ">
  8. <link rel="stylesheet" type="text/css" href="../style.css">
  9. </head>
  10.  
  11. <body class="marginpadding">
  12.  
  13. <!-- ШАПКА -->
  14. <table class="bordur" width="100%">
  15.  
  16. <?php include("../blocks/header.php") ?>
  17.  
  18.  
  19. <!-- СЕРЕДИНА -->
  20. <tr> <?php include("../blocks/kontent.php") ?></tr>
  21. </table>
  22.  
  23. <!-- COPYRIGHT -->
  24. <?php include("../blocks/footer.php") ?>
  25.  
  26. </body>
  27. </html>
  28.  
  29.  
  30.  
 
 Top
Golovastik
Отправлено: 04 Сентября, 2010 - 16:51:31
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




Дело в том, что мне нужно чтоб файл bideoyriki.php находился в папке blocks и на него ссылка шла.
1)/blocks/videolessons.php
2)blocks/videolessons.php
3)../blocks/videolessons.php
4)../../blocks/videolessons.php

Ни какой вариант не работает.

(Отредактировано автором: 04 Сентября, 2010 - 16:51:48)

 
 Top
Maiai
Отправлено: 04 Сентября, 2010 - 17:02:21
Post Id



Новичок


Покинул форум
Сообщений всего: 32
Дата рег-ции: Июль 2009  


Помог: 0 раз(а)




На мой взгляд, самое лучшее, это прописывать полные пути! Если у тебя все запросы идут через index.php, то можешь там прописать константу:



И в последующем, ссылаться к нужным файлам так:

PHP:
скопировать код в буфер обмена
  1. include( WEB_ROOT ."/blocks/footer.php")
 
 Top
Golovastik
Отправлено: 04 Сентября, 2010 - 17:18:18
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




Файл index.php

CODE (text):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head><title>Видео</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  6. <link rel="stylesheet" type="text/css" href="style.css">
  7. </head>
  8.  
  9. <body class="marginpadding">
  10.  
  11. <!-- ШАПКА -->
  12. <table class="bordur" width="100%">
  13.  
  14. <?php include("blocks\header.php") ?>
  15.  
  16.  
  17. <!-- СЕРЕДИНА -->
  18. <tr> <?php include("blocks\kontent.php") ?></tr>
  19. </table>
  20.  
  21. <!-- COPYRIGHT -->
  22. <?php include("blocks\footer.php") ?>
  23.  
  24. </body>
  25. </html>
  26.  
  27.  


Файл content.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <td class="d ikonka punkt_menu">
  3. <img class="block" src="img/videoyroki.png"  >
  4.  
  5. <a href="blocks\videolessons.php">JAVASCRIPT</a>
  6. <a href="#">Пунтк 2</a>
  7. <a href="#">Пункт 3</a>
  8. <a href="#">Пункт 4</a>
  9. <a href="#">Пункт 5</a></td>
  10.  
  11. <td valign="top"  style="border-bottom:0px;">&nbsp;</td>
  12.  
  13. <td class="d ikonka punkt_menu">
  14. <img class="block" src="img/videoyroki.png"  >
  15. <a href="blocks\videolessons.php"">Пунтк 1</a>
  16. <a href="videolessons.php">Пунтк 2</a>
  17. <a href="#">Пункт 3</a>
  18. <a href="#">Пункт 4</a>
  19. <a href="#">Пункт 5</a>
  20. </td>
  21.  


Файл videolessons.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head><title>Видео</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  6. <meta name="description" content=" ">
  7. <meta name="keywords" content=" ">
  8. <link rel="stylesheet" type="text/css" href="style.css">
  9. </head>
  10.  
  11. <body class="marginpadding">
  12.  
  13. <!-- ШАПКА -->
  14. <table class="bordur" width="100%">
  15.  
  16. <?php include("blocks\header.php") ?>
  17.  
  18.  
  19. <!-- СЕРЕДИНА -->
  20. <tr> <?php include("blocks\kontent.php") ?></tr>
  21. </table>
  22.  
  23. <!-- COPYRIGHT -->
  24. <?php include("blocks\footer.php") ?>
  25.  
  26. </body>
  27. </html>
  28.  
  29.  


Не работает всё равно
 
 Top
Maiai
Отправлено: 04 Сентября, 2010 - 17:28:50
Post Id



Новичок


Покинул форум
Сообщений всего: 32
Дата рег-ции: Июль 2009  


Помог: 0 раз(а)




В самом начале index.php добавь: define("WEB_ROOT", dirname(__FILE__));

И измени все пути в include с:"blocks\..." на WEB_ROOT . "blocks\..."
 
 Top
Golovastik
Отправлено: 04 Сентября, 2010 - 18:20:50
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




Вот так сработало, но после нажатия на пункт1, не отображаются картинки, и вообще стили не работают.
Файл kontent.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <td class="d ikonka punkt_menu">
  3. <img class="block" src="img/videoyroki.png"  >
  4.  
  5. <a href="./blocks/videolessons.php">JAVASCRIPT</a>
  6. <a href="#">Пунтк 2</a>
  7. <a href="#">Пункт 3</a>
  8. <a href="#">Пункт 4</a>
  9. <a href="#">Пункт 5</a></td>
  10.  
  11. <td valign="top"  style="border-bottom:0px;">&nbsp;</td>
  12.  
  13. <td class="d ikonka punkt_menu">
  14. <img class="block" src="img/videoyroki.png"  >
  15. <a href="./blocks/videolessons.php"">Пунтк 1</a>
  16. <a href="videolessons.php">Пунтк 2</a>
  17. <a href="#">Пункт 3</a>
  18. <a href="#">Пункт 4</a>
  19. <a href="#">Пункт 5</a>
  20. </td>
  21.  
  22.  



Файл index.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head><title>Видео</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  6. <link rel="stylesheet" type="text/css" href="style.css">
  7. </head>
  8.  
  9. <body class="marginpadding">
  10.  
  11. <!-- ШАПКА -->
  12. <table class="bordur" width="100%">
  13.  
  14. <?php include("blocks/header.php") ?>
  15.  
  16.  
  17. <!-- СЕРЕДИНА -->
  18. <tr> <?php include("blocks/kontent.php") ?></tr>
  19. </table>
  20.  
  21. <!-- COPYRIGHT -->
  22. <?php include("blocks/footer.php") ?>
  23.  
  24. </body>
  25. </html>
  26.  
  27.  


Файл videolessons.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head><title>Видео</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  6. <meta name="description" content=" ">
  7. <meta name="keywords" content=" ">
  8. <link rel="stylesheet" type="text/css" href="style.css">
  9. </head>
  10.  
  11. <body class="marginpadding">
  12.  
  13. <!-- ШАПКА -->
  14. <table class="bordur" width="100%">
  15.  
  16. <?php include("header.php") ?>
  17.  
  18.  
  19. <!-- СЕРЕДИНА -->
  20. <tr> <?php include("kontent.php") ?></tr>
  21. </table>
  22.  
  23. <!-- COPYRIGHT -->
  24. <?php include("footer.php") ?>
  25.  
  26. </body>
  27. </html>
  28.  
  29.  

(Отредактировано автором: 04 Сентября, 2010 - 18:21:39)

 
 Top
Maiai
Отправлено: 04 Сентября, 2010 - 20:06:39
Post Id



Новичок


Покинул форум
Сообщений всего: 32
Дата рег-ции: Июль 2009  


Помог: 0 раз(а)




Картинки и стли пропали, так как пути уже изменены, что бы меньше было проблем, можно путь к пользовательским файлам, указывать не относительный, а полный:
http://site[dot]com/css/style[dot]css
 
 Top
Golovastik
Отправлено: 05 Сентября, 2010 - 00:19:53
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




Прочитал такое:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. Для всех посетителей - это виртуальный веб-сервер. Который отличается,
  3.  в числе прочего, тем, что на нем НЕ СУЩЕСТВУЕТ ФАЙЛОВ. если ты пишешь
  4. http://site.ru/file.html - это не файл. Это URI, виртуальный адрес.
  5. Никакого файла с именем file.html на сервере может вообще не быть.
  6. Это все виртуальные адреса, а не файлы.
  7. И браузер работает именно с адресами.
  8.  
  9. Для разработчика же сайт - это программа, выполняющаяся на совершенно
  10.  конкретном реальном компьютере. С совершенно конкретным жестким
  11.  диском, каталогами и файлами. И скрипт, работая со своими данными,
  12.  подгружая другие скрипты, работает именно с реальными ФАЙЛАМИ, на физическом ДИСКЕ.
  13.  



1)Объясните понятным языком. как понять виртуальный сервер?
2)Если file.html может и не называться file.html а чем же тогда называться?
3)Чем отличается вот это ./blocks/videolessons.php от этого /blocks/videolessons.php?

(Отредактировано автором: 05 Сентября, 2010 - 00:48:09)

 
 Top
Мелкий Супермодератор
Отправлено: 05 Сентября, 2010 - 09:26:18
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




1) в данном контексте - не совсем понял
2) как угодно может называться вплоть до вообще не существует и генерируется каким-нибудь скриптом на лету. Занимается подменой адресов апачевский mod_rewrite
3) ./blocks/videolessons.php - относительный путь от текущего каталога.
/blocks/videolessons.php - на уровне URL или на уровне файлов (include и ко)?
на уровне URL - от корня HTTP-сервера, на уровне файлов - для никсов абсолютный путь.


-----
PostgreSQL DBA
 
 Top
JustUserR
Отправлено: 05 Сентября, 2010 - 13:04:00
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Golovastik пишет:
Объясните понятным языком. как понять виртуальный сервер?
Все используемые вами при разработке web-приложение пути можно классифицировать в два основых вида - а именно это локальные серверные пути которые являются физическими файловыми путями в его ФС - а также виртуальные web-пути которые используются для доступа к удаленным ресурсам при запросе по HTTP-протоколу В общем случае web-пути могут вообще не сущестсовать на локалной ФС - в случае если в web-сервере включены механизмы alias-инга и действенного перенаправления


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB