我是PHP的初学者,所以可能会提出愚蠢的问题。在烦扰你们之前我研究了几天我的问题。我有两个场景。
a)MySQL数据库有3个字段。 description
,weblink
和header
。 “weblink”字段将weblink存储在数据库中。使用PHP我试图在用户点击“标题”字段时在我的网页上显示网页链接。它不起作用 - 网页空白,代码如下。
while($row = mysqli_fetch_array($query)){
echo $row['description'];
echo "<br>";
echo "<br>";
echo "<a href = $row['weblink'] > $row['Header']</a>";
echo "<br>";
echo "<hr>";
}
b)场景2:与上面相同,但尝试将数据库中的链接显示为按钮。
while($row = mysqli_fetch_array($query)){
echo $row['description'];
echo "<br>";
echo "<br>";
echo $row['weblink'];
echo "<br>";
<a href = "$row['weblink']"<button>click me</button></a>;
echo "<hr>";
}
请帮忙。
答案 0 :(得分:1)
请考虑简陋的printf()
并应用正确的输出转义:
while ($row = mysqli_fetch_array($query)) {
printf('%s<br><br><a href="%s">%s</a><br><hr>',
htmlspecialchars($row['description'], ENT_QUOTES, 'UTF-8'),
htmlspecialchars($row['weblink'], ENT_QUOTES, 'UTF-8'),
htmlspecialchars($row['Header'], ENT_QUOTES, 'UTF-8')
);
}
答案 1 :(得分:1)
对于场景1,你应该做这样的事情(注意大括号):
echo "<a href='{$row['weblink']}'>{$row['Header']}</a>";
对于方案2,你应该做这样的事情(再次注意大括号):
echo "<a href=\"{$row['weblink']}\"><button>click me</button></a>";
请记住,大括号适用于双引号内的变量,而不是撇号。
答案 2 :(得分:1)
Check the below code:
while($row = mysqli_fetch_array($query)){
echo $row['description'];
echo "<br><br>";
echo $row['weblink'];
echo "<br>";
echo '<a href = "'.$row['weblink'].'" class="add-button-style">click me</a>';
echo "<hr>";
}
答案 3 :(得分:-1)
echo中的括号被视为字符串而不是数组键所以请使用{}这些括号。此外,引号不正确。使用以下代码
while($row = mysqli_fetch_array($query)){
echo $row['description'];
echo "<br>";
echo "<br>";
echo "<a href =' {$row['weblink']}' > {$row['Header']}</a>";
echo "<br>";
echo "<hr>";}
情景2
while($row = mysqli_fetch_array($query)){
echo $row['description'];
echo "<br>";
echo "<br>";
echo $row['weblink'];
echo "<br>";
echo '<a href = "{$row['weblink']}"><button>click me</button></a>';
echo "<hr>";}
希望这有助于你