2012-03-12 47 views
2

這個HTML字符串我在PHP中的新手...我有誰傳遞一個用戶名變量的PHP scrit一種形式,這是代碼.. <form action="bottone.php" method="get"> Inserisci il tuo nome utente: <input name="username" type="text" /> <input type="submit" value="GENERA CODICE" /> </form>如何顯示回聲PHP函數

我想在botton.php腳本顯示HTML代碼:

<a href=www.mysite.com/$username <img src="http://www.mysite.com/images/logo.jpg" width="50" height="50" alt="La mia pagina su Mysite"/></a> 

其中$用戶名是從表單傳遞的變量...我怎麼能做到這一點的帶有回聲功能? 感謝

回答

1
echo "<a href=\"http://www.mysite.com/" . htmlspecialchars($username) . "\"><img src=\"http://www.mysite.com/images/logo.jpg\" width=\"50\" height=\"50\" alt=\"La mia pagina su Mysite\"/></a>"; 
+1

antislash瘋狂:) – 2012-03-12 21:11:29

3

這樣的:

<?php 
echo '<a href="http://www.mysite.com/'.$username.'"><img src="http://www.mysite.com/images/logo.jpg" width="50" height="50" alt="La mia pagina su Mysite"/></a>'; 
?> 

或者,像這樣:

<a href="http://www.mysite.com/<?=$username?>"><img src="http://www.mysite.com/images/logo.jpg" width="50" height="50" alt="La mia pagina su Mysite"/></a> 

您可能希望確保$的用戶名是安全的,但...至少使用urlencodehtmlspecialchars,或類似的東西。

* 編輯 * 我假設你已經知道如何從你所提到的形式$的用戶名,但如果你沒有,你只是做:

$username = $_GET['username']; 

或者你可以使用這個機會來使用我上面提到的那些函數(除非你在迴應它之前需要$ username用於其它目的)。

例如:

$username = urlencode($_GET['username']); 

或者你可以做到這一點直接回聲是這樣的:

<a href="http://www.mysite.com/<?=urlencode($_GET['username'])?>"><img src="http://www.mysite.com/images/logo.jpg" width="50" height="50" alt="La mia pagina su Mysite"/></a> 
+1

選項#2是更好的。只需添加'htmlspecialchars()'。 :) – 2012-03-12 21:09:54

+0

我更喜歡選項#2自己。在這種情況下,htmlspcialchars()會比urlencode()更好嗎? – mason81 2012-03-12 21:12:47

+2

您將'$ username'插入'href'屬性,所以它是一個URL。 '(生)urlencode'是去這裏的路! :-) – Basti 2012-03-12 21:17:27

1

您可以用雙引號引起的回聲和如果u得到的HTML在單引號屬性

使用下面的代碼來自表格的用戶名

$ username = htmlspecialchars($ _ REQUEST ['username']);

或者如果你指定了變量,使用下面的代碼。

$ username = htmlspecialchars(你的文字會在這裏...);

echo "<a href= 'http://www.mysite.com/$username'><img src='http://www.mysite.com/images/logo.jpg' width='50' height='50' alt='La mia pagina su Mysite'></a>"; 
1
echo sprintf('<a href="http://www.mysite.com/%s"><img src="http://www.mysite.com/images/logo.jpg" width="50" height="50" alt="La mia pagina su Mysite"/></a>', htmlspecialchars($username, ENT_QUOTES, 'UTF-8'));