我的页面上有一张表,显示了卡片名,成本,设置,稀有度.此信息来自数据库表.当用户将鼠标悬停在表格中的任何卡片名称上时,会弹出卡片的图像,一旦移除鼠标,图像就会关闭(使用jQuery脚本).
这就是cardname单元格代码的外观:
<td><a href='#' class='screenshot' rel='cards/$cardname.jpg'>$cardname</a></td>
一切正常,除非$cardname包含’搞乱代码并阻止图像显示(卡名不工作的例子可能是“Faith’s Shield”).我尝试使用’而不是那似乎也不起作用.
我知道这可能不是实现我想要做的最好的方法,但我对webprogramming很新,这似乎是一个让它工作的简单技巧.
print "<table id='cardTable'>
<tr>
<th>Add to deck</th>
<th>Cardname</th>
<th>Cost</th>
<th>Set</th>
<th>Rarity</th>
</tr>";
while ($row = MysqL_fetch_array($result)) {
$cardname = $row['cardname'];
$cost = $row['cost'];
$set = $row['set'];
$rarity = $row['rarity'];
$idCard = $row['idCard'];
print "<tr>
<td>
<form action='' method='post'>
<p><button type='submit' name='addCard' class='addCard' value='$idCard' title='Add card to deck'></button>
<select name='amount'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
</select></p>
</form>
</td>
<td><a href='#' class='screenshot' rel='cards/$cardname.jpg'>$cardname</a></td>
<td>$cost</td>
<td>$set</td>
<td>$rarity</td>
</tr>";
}
print "</table>";
解决方法:
尝试用双引号代替属性值(attrib =“value”).那么值内是否有单引号无关紧要.另外,用值替换值内的双引号
"