2015-01-14 62 views
1

我是PHP的初学者,所以可能会问一些愚蠢的问题。我在调查你们之前的几天研究了我的问题。我有两种情况。PHP超链接不能作为变量

a)MySQL数据库有3个字段。 descriptionweblinkheader。 “网页链接”字段将网页链接存储在数据库中。使用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.你的代码被打破了。 2.你永远不会关闭href标签。 – Ohgodwhy

回答

-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>";} 

希望这有助于你

+0

谢谢Hudixt!你们这里很有帮助,很棒!我的问题解决了。我不知道变量需要用echo括号括起来。 – divinelotus

+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,你应该这样做(注意括号):

echo "<a href='{$row['weblink']}'>{$row['Header']}</a>"; 

对于方案2 ,你应该这样做(再次注意括号):

echo "<a href=\"{$row['weblink']}\"><button>click me</button></a>"; 

请记住,大括号适用于双引号内的变量,而不是撇号。

+0

谢谢布吉人!对于场景2,我使用了你的方法,效果很好。 – divinelotus

+0

很高兴能帮到 –

+0

嘿,你知道我怎样才能打开浏览器的另一个选项卡上的链接,当用户点击按钮? – divinelotus

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>"; 
}