2015-09-28 115 views
-3

我在這裏遇到了我的代碼問題。我想要做的是在用戶註冊時自動在用戶的文件夾中創建一個index.php文件。這實際上已經完成了,現在主要的問題是如何在創建的'index.php'文件中插入一行代碼。下面的代碼行我試圖使用來執行:如何將一行php代碼插入文本文件

這不工作(其實我是想什麼):

$filePath = $_SERVER['DOCUMENT_ROOT']."/".$_SESSION['username']."/index.php"; 
$fp = fopen($filePath, 'wb') 
or die("can't open file"); 
$content = "<?php require($_SERVER['DOCUMENT_ROOT']."/home.php"); ?>"; 
fwrite($fp,$content); 
fclose($fp); 

雖然這確實:

$filePath = $_SERVER['DOCUMENT_ROOT']."/".$_SESSION['username']."/index.php"; 
$fp = fopen($filePath, 'wb') 
or die("can't open file"); 
$content = "this is a string"; 
fwrite($fp,$content); 
fclose($fp); 

所以我想要的是內容變量中的代碼進入'index.php'文件。任何幫助如何做到這一點?

+1

你得到的錯誤是什麼?什麼是輸出到index.php文件? –

+0

謝謝你的幫助!它已被修復 – Skeellz

回答

0

你混合'"

Thise行:

$content = "<?php require($_SERVER['DOCUMENT_ROOT']."/home.php"); ?>"; 

應該是這樣的:

$content = '<?php require($_SERVER["DOCUMENT_ROOT"]."/home.php"); ?>'; 

否則解釋thinkts,在]."您的字符串結束,然後得到/home.php沒有它之間沒有它beeing一個字符串連接。因此你會得到一個php錯誤。

+0

你的工作不行 – Skeellz

+0

@Skeellz你有沒有得到任何錯誤或警告?我改變了一下。你能試試嗎? – DocRattie

+1

謝謝你的幫助! – Skeellz

0

使用該行的單引號:

$content = '<?php require($_SERVER[\'DOCUMENT_ROOT\']."/home.php"); ?>'; 
+0

我試過你的答案仍然是相同的錯誤 – Skeellz

+0

你得到什麼錯誤?什麼是輸出到index.php文件? –

0

使用\"

"<?php require($_SERVER['DOCUMENT_ROOT'].\"/home.php\"); ?>"; 
+0

我也試過你的同樣的錯誤 – Skeellz

+0

你不必要地逃避雙引號。由於語法錯誤,此代碼不會執行:'PHP Parse error:syntax error,unexpected'「/home.php \」); ?>「'(T_CONSTANT_ENCAPSED_STRING),期待標識符(T_STRING)' – amphetamachine

+0

是啊......謝謝你!只是修好了!錯誤就像你說的那樣....單個n雙引號 – Skeellz