如何按原样包含此代码,然后将其上传到我的数据库,在数据库中应该有变量而不是字符串?
CODE:
$username1 = $_SESSION['myusername'];
$sql = mysql_query("SELECT * FROM `members` WHERE `username`='$username1'");
while($row=mysql_fetch_array($sql)) {
$replytext = '<table cellpadding="0" cellspacing="0" border="0"><tr><td rowspan="10" class="teamimage" style="background-image: url(images/usericons/'.$row['img'].');"><div style="background-image:url(images/teamicons_shadow.png); width: 75px; height: 75px;"></div></td></tr><tr valign="top"><td rowspan="10" style="width:10px;"></td><td style="width:300px;"><table cellpadding="0" cellspacing="0" border="0" style="margin:0px; padding:0px;"><tr><td class="teamname"><b><a href="teams.php?user='.$row['id'].'">'.$row['username'].'</a></b></td></tr><tr><td>Summoner Name: '.$row['summonername'].'</td></tr><tr><td style="border-bottom: 1px solid #888; padding-bottom: 5px;">Clan: '.$row['clan'].'</td></tr><tr><td style="color: #888; padding-top: 3px;">Country: '.$row['country'].'</td></tr><tr><td style="color: #888; padding-top: 3px;">Joined In: '.$row['created'].'</td></tr></table></td><td style="width:10px;"></td><td rowspan="10" style="border: 1px solid #aaa; padding: 3px; width:600px;">'.$replytext.'</td></tr></table>';
}
数据库中的代码
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td rowspan="10" class="teamimage"
style="background-image: url(images/teamicons/default_user.png);">
<div
style="background-image:url(images/teamicons_shadow.png);
width: 75px; height: 75px;">
</div>
</td>
</tr>
<tr valign="top">
<td rowspan="10" style="width:10px;">
</td>
<td style="width:300px;">
请注意,我之前解释的代码是$replytext
内的代码!
答案 0 :(得分:1)
如果我理解正确,您希望数据库中的代码为:
<table cellpadding="0" cellspacing="0" border="0"><tr><td rowspan="10" class="teamimage" style="background-image: url(images/teamicons/$row['img'].png)
另一个解决方案是拥有一个不会让php认为它是变量的唯一char。 例如,改变:
$row['img']
到
###row['img']
当您从数据库中提取此代码时,请使用简单的str_replace替换### 符号与$。
当然你需要有一个独特的字符,如果你使用像“a”这样的简单字符,它会将代码中的所有“a”字符改为$ ...这不是一个好主意。
答案 1 :(得分:0)
你可以像这样转义单引号:
$replytext = '<table cellpadding="0" cellspacing="0" border="0"><tr><td rowspan="10" class="teamimage" style="background-image: url(images/usericons/$row[\'img\']);"><div ...
对所有数组键使用\ escape:
url(images/usericons/$row[\'img\']);
答案 2 :(得分:0)
这有用吗?
$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.';
eval("\$str = \"$str\";");
echo $str. "\n";