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
Форумы портала PHP.SU :: Версия для печати :: как сделать переход на определенную область страницы, которая включается (include) в другую
Форумы портала PHP.SU » » Работа с файловой системой и файлами » как сделать переход на определенную область страницы, которая включается (include) в другую

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

1. nofx - 13 Мая, 2011 - 19:29:40 - перейти к сообщению
Вобщем есть главная (index.php) страница с меню. В меню ссылки следующего вида:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <a href="index.php?p=info>информация</a>
  3. <a href="index.php?p=info&anchor=1>о системе</a>
  4. <a href="index.php?p=info&anchor=2>о сайте</a>
  5.  


вот, собственно инклужу так:
PHP:
скопировать код в буфер обмена
  1. switch ($_GET["p"])
  2.   {
  3.     case 'info':
  4.         {
  5.           switch ($_GET['anchor'])
  6.                  {
  7.                    case "1":
  8.                          { include ("infopage.php?anchor=1");}
  9.                                break;
  10.                                case "2":
  11.                                       { include ("infopage.php?anchor=2");}
  12.                                                  break;
  13.                               }
  14.           default: {include ("infopage.php");}
  15.           }
  16.  }


есть способ через JS: в infopage.php:
PHP:
скопировать код в буфер обмена
  1.  
  2.    if ($_GET['anchor']='1')
  3.   echo "'windows.location='infopage.php?#main'"


но так , конечно, не получаится, так как идет обращение не к внутреннему документу.Как получить доступ именно к внутренней подключенной странице....или такое нельзя???
2. komprenda - 13 Мая, 2011 - 19:32:02 - перейти к сообщению
nofx пишет:
Вобщем есть главная (index.php) страница с меню. В меню ссылки следующего вида:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <a href="index.php?p=info>информация</a>
  3. <a href="index.php?p=info&anchor=1>о системе</a>
  4. <a href="index.php?p=info&anchor=2>о сайте</a>
  5.  


вот, собственно инклужу так:
PHP:
скопировать код в буфер обмена
  1. switch ($_GET["p"])
  2.   {
  3.     case 'info':
  4.         {
  5.           switch ($_GET['anchor'])
  6.                  {
  7.                    case "1":
  8.                          { include ("infopage.php?anchor=1");}
  9.                                break;
  10.                                case "2":
  11.                                       { include ("infopage.php?anchor=2");}
  12.                                                  break;
  13.                               }
  14.           default: {include ("infopage.php");}
  15.           }
  16.  }


есть способ через JS: в infopage.php:
PHP:
скопировать код в буфер обмена
  1.  
  2.    if ($_GET['anchor']='1')
  3.   echo "'windows.location='infopage.php?#main'"


но так , конечно, не получаится, так как идет обращение не к внутреннему документу.Как получить доступ именно к внутренней подключенной странице....или такое нельзя???


нельзя
3. nofx - 13 Мая, 2011 - 19:50:08 - перейти к сообщению
понял, что делаю фигню..

добавил на infopage.php:

CODE (javascript):
скопировать код в буфер обмена
  1. var a = window.location.search;
  2. alert(a);


выводит то, что есть в ссылке первоначально, то есть при include грузится без всяких параметров..
тут видимо передавать из строки параметр в JS, который и выделит нужный блок (div) и проскролит страницу, буду искать
4. ATOM - 14 Мая, 2011 - 12:59:13 - перейти к сообщению
не знаю то или нет но я лично делаю так.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. require_once ('engine/data/config.php');
  4. $page = $_GET['page'];
  5. if ($page==''){
  6. $title = 'Титл главной';
  7. $description = 'Описание главной';
  8. $keywords = 'Ключевые слова главной';
  9. $text = file_get_contents('page/index.php');
  10. }
  11. if ($page=='contact')
  12. {
  13. $title = 'титл контактов';
  14. $description = 'Описание контактов';
  15. $keywords = 'Ключевые слова контактов';
  16. $text = file_get_contents('page/contact.php');
  17. }
  18. include ('templates/content.php');
  19. ?>
  20.  
5. nofx - 15 Мая, 2011 - 00:32:17 - перейти к сообщению
ATOM пишет:
не знаю то или нет но я лично делаю так.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. require_once ('engine/data/config.php');
  4. $page = $_GET['page'];
  5. if ($page==''){
  6. $title = 'Титл главной';
  7. $description = 'Описание главной';
  8. $keywords = 'Ключевые слова главной';
  9. $text = file_get_contents('page/index.php');
  10. }
  11. if ($page=='contact')
  12. {
  13. $title = 'титл контактов';
  14. $description = 'Описание контактов';
  15. $keywords = 'Ключевые слова контактов';
  16. $text = file_get_contents('page/contact.php');
  17. }
  18. include ('templates/content.php');
  19. ?>
  20.  

вы - молодец!
6. NFL - 15 Мая, 2011 - 19:20:11 - перейти к сообщению
nofx пишет:
ATOM пишет:
не знаю то или нет но я лично делаю так.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. require_once ('engine/data/config.php');
  4. $page = $_GET['page'];
  5. if ($page==''){
  6. $title = 'Титл главной';
  7. $description = 'Описание главной';
  8. $keywords = 'Ключевые слова главной';
  9. $text = file_get_contents('page/index.php');
  10. }
  11. if ($page=='contact')
  12. {
  13. $title = 'титл контактов';
  14. $description = 'Описание контактов';
  15. $keywords = 'Ключевые слова контактов';
  16. $text = file_get_contents('page/contact.php');
  17. }
  18. include ('templates/content.php');
  19. ?>
  20.  

вы - молодец!


мазохисты вы... Улыбка
во первых есть switch, во вторых есть способы делать это попроще. Хм

 

Powered by ExBB FM 1.0 RC1