我很难从用户输入的电子邮件地址创建mailto链接,该电子邮件地址存储在数据库中(这用于评论部分)。我希望创建一个新的行,其中的电子邮件地址打印有mailto超链接。相反,它不会打印电子邮件地址,而是将该行下面的所有文本转换为mailto超链接。请参阅附图以获得澄清。
echo "<h3><u>Latest Comments:</u></h3>";
while($fetch=mysql_fetch_array($query)) {
echo "<hr />";
echo "<p>".$fetch['comment']."<p>";
echo "<header><h3>By: ".$fetch['comment_by']."</h3><br>";
echo "<a href='mailto:".$fetch['email'].">".$fetch['email']."</a></br>";
$sqldate = $fetch['datetime'];
$date=strtotime($sqldate);
echo "<span class='date'>On: " .date("m/d/Y, g:i A", $date)."</span></header></p>";
请注意,它会获取正确的电子邮件地址,但不会使用html正确创建超链接。另请注意,这些都包含在php标记内。
答案 0 :(得分:2)
你错过了一句话:
echo "<a href='mailto:".$fetch['email']."'>".$fetch['email']."</a></br>";
-----^
答案 1 :(得分:0)
现在,在PHP和HTML之间出现这种混乱是不可接受的,通常以&#34;缺少引号&#34;。
您的视图应该是
<h3><u>Latest Comments:</u></h3>
<?php foreach($records as $record) : ?>
<hr />
<p><?php echo $record['comment'] ?></p>
<header>
<h3>By: <?php echo $record['comment_by'] ?></h3>
<a href="mailto:<?php echo $record['email'] ?>"><?php echo $record['email'] ?></a><br />
<span class="date">On: <?php echo date("m/d/Y, g:i A", strtotime($record['datetime'])) ?></span>
</header>
<?php endforeach ?>