узнать из ссылки переменную и отработать по ней

Тема в разделе "Как сделать...", создана пользователем 13zone, 23 май 2011.

  1. 13zone

    13zone

    Регистр.:
    22 ноя 2008
    Сообщения:
    190
    Симпатии:
    45
    есть ссылки,

    /index.php?option=com_content&view=article&id=1
    /index.php?option=com_content&view=article&id=2
    /index.php?option=com_content&view=article&id=3

    (сайт на жумле)

    нужно определить по ссылке что это ИМЕННО ТА страница что нужна и вставить требуемую картинку..

    пробовал так (и много раз по другому)

    PHP:
    switch ($option) 
    {
      case 1:
       ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_bum.jpg">
    <?
        break;
      case 'article&id=2':
        ?>
        
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_poly.jpg">

        <?
        break;
      case 3:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_shir.jpg">
        <?
        break;
      case 4:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_laser.jpg">
        <?
        break;
      case 5:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_mob.jpg">
        <?
        break;
      case 6:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_rek.jpg">
        <?
        break;
      case 7:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_foto.jpg">
        <?
        break;
      case 8:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_project.jpg">
        <?
        break;
      case 9:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_kont.jpg">
        <?
        break;
      case 10:
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_design.jpg">
    <?
        break;
      case 0:
       ?>    
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_start.jpg">
    <?
    }
    подскажите плиз, как же мне получить эти =1 =2 =3 и т.д.?

    ---------- Post added at 16:09 ---------- Previous post was at 14:40 ----------

    решение нашел таким образом....

    PHP:

    <?php
    switch ($_SERVER['REQUEST_URI']) 
    {
      case 
    '/index.php?option=com_content&view=article&id=11':
       
    ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_kont.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_kont.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
    <?
        break;
      case '/index.php?option=com_content&view=article&id=2':
        ?>
        
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_design.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_design.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=3':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_poly.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_poly.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=4':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_shir.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_shir.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=5':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_laser.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_laser.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=6':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_mob.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_mob.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=7':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_rek.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_rek.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=8':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_bum.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_bum.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=9':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_foto.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_foto.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
        <?
        break;
      case '/index.php?option=com_content&view=article&id=10':
        ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_project.jpg">
    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_project.jpg);
        background-repeat: no-repeat;
        height: 800px;}
    </style>
    <?
        break;
      case 0:
       ?>    
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/list_start.jpg">

    <style rel="stylesheet" id="" type="text/css" charset="utf-8">
    #sideLeft_start {
        float: left;
        width: 397px;
        position: absolute;
        top: 0;
        background-image: url(../image/polosa_index.jpg);
        background-repeat: no-repeat;
        height: 800px;}
      </style>  
    <?
    }
    ?>

    многовато конечно, но по другому неполучилось...

     
  2. horpah

    horpah

    Регистр.:
    21 июн 2010
    Сообщения:
    200
    Симпатии:
    55
    $_GET['id']; и есть id из адресной строки. :)
     
  3. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    364
    Симпатии:
    117
    забавный свич...
    но так короче будет
    PHP:
    <?php
    $imgArr  
    = array("list_start.jpg""list_bum.jpg""list_poly.jpg" );
    ?>
    <body background="<?php echo $this->baseurl ?>/templates/ja_purity/images/<?php echo $imgArr[(int)@$_GET['id']];?>">
    ну а стиль походу тоже дублируется блоками за исключением картинки ...
    там тоже можно как-то так ...
    но кошерней всеже добавить к примеру для блока какой-то класс ( по тем же индексам ... )
    типа
    <div class="my_class_<?php echo (int)@$_GET['id']];?>
    id="sideLeft_start">
    ну и для id="sideLeft_start" задать общий для всех стиль
    PHP:
    #sideLeft_start { 
        
    floatleft
        
    width397px
        
    positionabsolute
        
    top0
        
    background-repeatno-repeat
        
    height800px;} 
    // ну а для "индивидуальных" уже детализировать 
    .my_class_0{
        
    background-imageurl(../image/polosa_index.jpg);
    }
    .
    my_class_1{
      
    background-imageurl(../image/polosa_kont.jpg);
    }
    .
    my_class_2{
      
    background-imageurl(../image/polosa_kont.jpg);
    }