2010-01-10 62 views
6

我想知道是否有寫下面的代碼的短方式:PHP設置輸入值與isset

<input type="text" name="username" value="<?if(isset($_POST['username'])){ echo $_POST['username']; }?>" /> 

我討厭不得不這樣做將我的所有形式的isset()函數檢查真的攪亂我的HTML並嚇跑了前面的人。

回答

5

呼應你可以做一個幫手:

function req($key, $default = '') 
{ 
    return isset($_REQUEST[$key]) ? $_REQUEST[$key] : $default; 
} 

<input name="user" value="<?php echo htmlentities(req('user')) ?>" /> 

@marvin's建議是你的腳本以及

不錯

關於前端夥計,我會說給他們一些基本的PHP使用,就像在這個PHP的設計師教程:http://www.digital-web.com/articles/php_for_designers/

學習基本scrips我認爲這是比使用外部模板系統

+0

您也可以將這些htmlentities放入req函數中,也許作爲一個選項來進一步簡化。 – JAL 2010-01-10 23:19:58

3

可以用PHP部分分配值,然後就在HTML

$username = isset($_POST['username'])?$_POST['username']:''; 

<input type="text" name="username" value="<?php echo $username;?>" /> 
1

更好的爲什麼不

<input type="text" name="username" value="<? echo $_POST['username']; ?>" /> 

如果$ _POST [「用戶名」]爲空,那麼就會造成「值「無論如何。

我覺得我失去了一些東西。

+0

它發出警告(密鑰不存在)。 – dotty 2015-06-09 10:35:40