2011-05-15 295 views
0

我有幾組代碼顯示在我的網頁右側。我使用這個地方顯示一些用戶信息和一些短的廣告。對於我在數據庫中使用該代碼的廣告。現在的問題是,我想顯示一個外部的PHP文件,它位於我試圖包含或需要此PHP文件的同一目錄中。Php無法正常工作,但iframe正常工作

但我不知道爲什麼這是行不通的。我試過iframe,但工作正常,但我想用php include,但它不工作。請告訴我在哪裏做錯了。這裏是我的代碼:

if (is_array($data['blocks'])) { 
     $output .= '<div id="appside">'; 
     foreach($data['blocks'] as $block) { 
      if (is_array($block)) { 
       $output .= ' 
       <div class="block">'; 
       if ($block['title']) { 
        $output .= '<div class="block_title">'.$block['title'].'</div>'; 
       } 
       $output .= '<div class="block_content"> 
       '.$block['content']. 
       '</div> 
       </div> 
       '; 
      } 
     } 
     $output .= get_gvar('theme_block_sidebar'). 

     '<div><?php include("/home/xxxxxxx/public_html/xxxxxxxa.php"); ?></div> 


     </div> 

       ';// end of app_sidebar 

我試過所有短的替代品,但它的印刷原始的php代碼。它沒有被執行。我試圖把<?php include(\'/home/xxxxxxx/public_html/xxxxxxxa.php\'); ?> 和所有其他類型的替代品,但其印刷原始的PHP代碼。

回答

0

如果你希望包括該文件在同一目錄作爲該文件,那麼你就應該包括文件名只

<?php include('filename.php'); ?> 

,如果它是在一個較高的水平或在目錄或子目錄在更高的層次上,那麼你應該移動到這個層次,然後移動到文件中。

<?php include('../../path/to/file.php'); ?> 

其中../../正在上升2級,你可以將其設置爲你想要去儘可能多的水平。

+0

我嘗試了所有替代方案,通過你喜歡只提出file.php和... /還,但它不工作 – 2011-05-15 03:20:13

+0

您可以發佈該文件的不工作不僅是功能和快照內容你的服務器的目錄樹(擴展文件夾)?你可以隱藏你的用戶名/ FTP的詳細信息和任何敏感數據 – sikas 2011-05-15 03:21:54

0

如果你想從一個變量的外部php文件輸出,可以使用PHP buffering functions得到它:

ob_start(); 
include("/home/xxxxxxx/public_html/xxxxxxxa.php"); 
$output_from_php_file = ob_get_contents(); 
ob_end_clean(); 

然後你就可以追加$output_from_php_file$output變量,無論你想。

+0

工作,但頁面的所有功能不工作。頁面包含幾個IMG,在第一次加載我加載10 IMG和隨着用戶下降它將加載5 img.script是在iframe中工作正常,但在這裏與您的方法只有第一集10 img加載。我想要另外一組5張圖像在用戶滾動並下降時加載。你有什麼想法發生了什麼。我想用ob_start thar頁面被視爲單獨的頁面。因爲我沒有包含JavaScript和CSS是特定的頁面,因爲這些js和css文件已經存在於主頁面,我包括這個file.php – 2011-05-15 03:38:31

1
'<div><?php include("/home/xxxxxxx/public_html/xxxxxxxa.php"); ?></div> 

PHP不會在字符串內執行(這是所有以上是)。

您不能真正連接一個包含語句(除非包含的文件通過return返回)。鑑於我不能告訴你的代碼片段是否在函數內部或它是如何執行的,我最好的解決方案是使用輸出緩衝。

$output .= get_gvar('theme_block_sidebar') . '<div>'; 

ob_start(); 
include "/home/xxxxxxx/public_html/xxxxxxxa.php"; 
$output .= ob_get_contents(); 
ob_end_clean(); 

$output .= '</div>' 
+0

工作但頁面的所有功能都不工作。頁面包含幾個img,在第1加載我正在加載10 img,並隨着用戶下降它將加載5 img.script在iframe中工作正常,但在這裏與您的方法只有第一集10 img加載。我想要另外一組5張圖像在用戶滾動並下降時加載。你有什麼想法發生了什麼。我想用ob_start thar頁面被視爲單獨的頁面。因爲我沒有包括JavaScript和CSS是特定的頁面,因爲這些js和css文件已經存在於主頁面,我包括這個file.php – 2011-05-15 03:37:12

相關問題