2013-05-20 105 views
0

我想通過一個變量$user它被定義爲頁面的目錄名稱在頁面上的iframe。PHP變量不能通過單引號

變量$user應該將用戶名傳遞給iframe,以便iframe可以下載用戶的Minecraft皮膚並顯示它。此代碼的工作,當我更換在iframe的變量和用戶名,但在iframe承認$user$user ...

主要頁面:

<link rel="stylesheet" type="text/css" href="/css/index.css" /> 
<?php 
    $path = DIRNAME($_SERVER['PHP_SELF']); 
    $position = STRRPOS($path,'/') + 1; 
    $user= SUBSTR($path,$position); 
    $root="/"; 

include ($_SERVER['DOCUMENT_ROOT'].'/menu/nav.php'); 

echo '<iframe src="skin.php?user=$user" width="200" height="400" align="left"/>' 
?> 

的IFRAME:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<?php $user = $_GET['user']; ?> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script> 
<script src="/js/excanvas.js" type="text/javascript"></script> 
<script src="/js/minecraftskin.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(function() { 
     $(".mc-skin").minecraftSkin(); 
    }); 
</script> 
</head> 
<style> 
* { 
    margin:0; 
    padding:0; 
} 
div { 
    display:inline-block; 
} 
.minecraft_head .head { 
    display:none; 
} 
.minecraft_head:hover .hat { 
    display:none; 
} 
.minecraft_head:hover .head { 
    display:inline-block; 
} 
.scratch { 
    display:none; 
} 
</style> 
<body> 

<span class="mc-skin" data-minecraft-username="<?php echo $user; ?>"></span> 
</body> 
</html> 

如何我能糾正這個嗎?

回答

2

PHP不解析單引號內的變量,改變這一行:

echo '<iframe src="skin.php?user=$user" width="200" height="400" align="left"/>' 

這個( concantenated string style):

echo '<iframe src="skin.php?user=' .$user. '" width="200" height="400" align="left"/>' 

或本(使用雙引號的行變量風格):

echo "<iframe src='skin.php?user=$user' width='200' height='400' align='left'/>" 
1

變量不插入單引號內。要麼把它們放在雙引號或外部引用

echo '<iframe src="skin.php?user=$user" width="200" height="400" align="left"/>' 

應該

echo '<iframe src="skin.php?user='.$user.'" width="200" height="400" align="left"/>'; 
1

這不會工作。

Sincel引用',不支持內聯變量。

雙引號,"做。

這將工作:

echo "<iframe src=\"skin.php?user=$user\" width=\"200\" height=\"400\" align=\"left\"/>"; 
+0

普羅蒂普:對於HTML屬性您可以使用單引號。 –