2011-01-14 12 views
1

こんにちは私は 'slides'という名前のフォルダがあり、複数のtext/htmlファイルをslide1.html slide2に持っている状況で助けが必要でした。HTMLファイルを解析して構築した配列から変数を取得するには

<h2>Title of the Slide</h2> 
<p><a href="http://mydomain.com"><img src="icon.png" width="227" height="227" alt="icon" longdesc="http://longdescription" /></a></p> 
<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.</p> 

3プロパティタイトル、画像・説明:HTML slide3.htmlなど.....これらのファイルの

構造は次のようです。 各行に1つずつ

----------- UPDATE ---------------

@MATTにより示唆されるように、私が試したが、私は空白を取得しています画面:参考のためにページ全体のスクリプトです。私はJoomlaのテンプレートに取り組んでいます。

<?php 
defined('JPATH_BASE') or die(); 
gantry_import('core.gantryfeature'); 

class GantryFeatureTabs extends GantryFeature { 
    var $_feature_name = 'tabs'; 
    function init() { 
     global $gantry; 

     if ($this->get('enabled')) { 
      $gantry->addScript('tabs.js'); 
      $gantry->addInlineScript($this->_tabs()); 
     } 
    } 
    function render($position="") { 
     ob_start(); 
     foreach(glob("/tabs/*.html") as $fileName) { 
     $fname = basename($fileName); 
     $curArr = file($fname); 
     $slides[$fname ]['title'] = $curArr[0]; 
     $slides[$fname ]['image-links'] = $curArr[1]; 
     $slides[$fname ]['description'] = $curArr[2]; 

     foreach($slides as $key => $value){ 

      ?> 
       <ul id="tabs1" class="tabs"> 
       <li> 
       <a href="<?php echo $demo_tabs_url.$curArr; ?>"><?php echo $value['title'] ?></a> 
       </li> 
       </ul> 
       <div class="clear"></div> 
       <ul id="contents1" class="tabs-content"> 
        <li> 
        <?php echo $value['image-links'] ?> 
        <?php echo $value['description'] ?> 
        </li> 
       </ul> 
      <?php 
      }} 
      ?> 
     <?php 
     return ob_get_clean(); 
    } 
    function _tabs() { 
     global $gantry; 
     $js = " 
      window.addEvent('load',function() { 
       var tabset = new TabSet($$('#tabs1 li a'),$$('#contents1 li'),{ 
        cookieName: 'demo-list' 
       }); 
      }); 
     "; 
     return $js; 
    } 
} 
+0

ことが義務づけられていますか?あるいは、あなたはデータベースを好むだろうか? – Marnix

+0

これはJoomlaのテンプレートなので、データベース駆動型のものを提案しても、それは私とうまくいくはずです。 –

答えて

0

てみてください...彼らがそうであるように、あなたがすべてのこれらのファイルを持っていることを

<?php 

error_reporting(E_ALL); 

class GantryFeatureTabs extends GantryFeature 
{ 
    $_feature_name = 'tabs'; 
    function init() { 
     global $gantry; 

     if ($this->get('enabled')) { 
      $gantry->addScript('tabs.js'); 
      $gantry->addInlineScript($this->_tabs()); 
     } 
    } 
    function render($position="") { 
     ob_start(); 
     foreach(glob("/tabs/*.html") as $fileName) { 
     $fname = basename($fileName); 
     $curArr = file($fname); 
     $slides[$fname ]['title'] = $curArr[0]; 
     $slides[$fname ]['image-links'] = $curArr[1]; 
     $slides[$fname ]['description'] = $curArr[2]; 
} 

     foreach($slides as $key => $value) 
     {   
      ?> 
       <ul id="tabs1" class="tabs"> 
       <li> 
       <a href="<?php echo $demo_tabs_url.$curArr; ?>"><?php echo $value['title'] ?></a> 
       </li> 
       </ul> 
       <div class="clear"></div> 
       <ul id="contents1" class="tabs-content"> 
        <li> 
        <?php echo $value['image-links']; ?> 
        <?php echo $value['description']; ?> 
        </li> 
       </ul> 
      <?php 
     } 
     return ob_get_clean(); 
    } 
    function _tabs() { 
     global $gantry; 
     $js = " 
      window.addEvent('load',function() { 
       var tabset = new TabSet($$('#tabs1 li a'),$$('#contents1 li'),{ 
        cookieName: 'demo-list' 
       }); 
      }); 
     "; 
     return $js; 
    } 
} 

?> 
+0

ここでは、最初の2つのコードサンプルが期待どおりに機能していると仮定しています。私が間違っている場合、あなたの質問にもっと具体的にお気軽にお気軽に。 – Matt

+0

申し訳ありません。私はあなたのアプローチを試みたが、うまくいかなかった。私は質問を編集し、あなたの提案された答えと一緒にどこにでも私のページスクリプト全体を含めました。親切にそれを通り抜け、何が間違っているのかを示唆します。空白の画面が表示されています –

+0

@Madhavi余分な中かっこを追加しました。}を2番目のforeachのすぐ下に削除します。 – Matt

関連する問題