2010-05-20 71 views
2

我需要使用include函數與變量。在PHP中:如何使用include()函數哪個參數是可變的?

但是,當我嘗試這樣做時,我遇到了一些錯誤。

代碼:

$year=$_POST['year']; 

$month=$_POST['month']; 

$day=$_POST['day']; 

include "Event.php?year=".$year."&month=".$month."&day=".$day; 

這樣,u能幫助我嗎? :)

+2

您想用'include'做什麼? – 2010-05-20 21:09:56

+0

我也不明白。你究竟想在這裏完成什麼? – karim79 2010-05-20 21:14:27

回答

4

當你包含文件時,你不能傳遞它們任何參數。但是,它們繼承當前作用域(全局或方法)中的任何變量。

我猜你的代碼做什麼,但我認爲你可以這樣做:

include "Event.php";

+0

謝謝親愛的Coronatus。 但是,您的建議它不起作用:( 我寫的主代碼,做一個日曆。因此,我需要這樣做,包括刷新每一天添加新事件。 – Nina 2010-05-20 21:20:33

+0

是我也認爲它應該做的工作,如果它不工作,那就意味着你的代碼有問題,如果你沒有任何版權問題或者類似問題,請發佈你的相關代碼,以便其他人可以查看和理解什麼是。不對的地方 – 2010-06-23 11:35:31

0

直接包含Event.php並從那裏訪問$ _POST或$ _GET變量。


include('Event.php'); 

// Event.php: 
echo $_POST['year']; // works
1

我不確定你想達到什麼目的,但我有幾個方便的猜測。

1 - 嘗試將用戶重定向,與附加到URL的參數,在這種情況下,你可能需要使用header

header("Location: http://example.com/Event.php?year=$year&month=$month&day=$day"); 

2 - 你試圖捕捉的輸出該頁面給出了某些GET參數的存在,在這種情況下,您可以利用file_get_contents

$output = file_get_contents("http://localhost/Event.php?year=$year&month=$month&day=$day"); 
+0

是, 你首先猜測正是我想做的事情, 但是,它不與我 工作ü可以告訴我怎麼 – Nina 2010-05-20 21:59:38

+1

@Nina - ?到底發生了什麼你*不能*重定向* *發送任何輸出到瀏覽器後,所以沒有回聲狀態nts,什麼也沒有。 – karim79 2010-05-20 22:05:13

+0

這不完全正確。我們至少可以將任何數據輸出到瀏覽器,然後使用標題功能,但是有一個條件 - 您必須在頁面的第二行使用函數「ob_start()」將數據輸出到瀏覽器。第一行是PHP開始標記「<?php」,除了在第一行中使用「enter」之外,不能使用任何空格字符。 – 2010-06-23 11:33:06

相關問題