感谢您在Ignore null results in MySQL JOIN queries
回答我的问题我在localhost创建了自己的广播电台网站http://myradiostation.localhost
这是代码:
<?php
$connection = mysql_connect("localhost", "root", "PASSWORD") or die("Error connecting to database");
mysql_select_db("radio1", $connection);
$result = mysql_query("SELECT * FROM presenters;", $connection) or die("error querying database");
$i = 0;
while($result_ar = mysql_fetch_assoc($result)){
?>
这是HTML代码:
<div class="divider"></div>
<div class="main" style="width:552px;">
<img src="<?php echo $result_ar['image']; ?>" width=115 height=60>
<div class="time"><?php echo $result_ar['airtime']; ?></div>
<div class="show"><h3><b><a href="<?php echo $result_ar['link']; ?>"><?php echo $result_ar['presenter']; ?></a></b></h3>
<p><?php echo $result_ar['showinfo']; ?></p></div>
<div class="footer"></div>
</div>
<?php
$i+=1;
}
?>
确实工作,除了一件事 - 没有链接的内容仍链接回页面本身,即使数据库列有一些空白内容。
这是SQL代码 - 在PHPmyadmin中创建一个名为radio1的数据库,代码如下:
CREATE TABLE IF NOT EXISTS `presenters` (
`presenter` varchar(255) NOT NULL,
`link` varchar(255) NOT NULL,
`image` varchar(255) NOT NULL,
`airtime` time NOT NULL,
`showinfo` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `presenters`
--
INSERT INTO `presenters` (`presenter`, `link`, `image`, `airtime`, `showinfo`) VALUES
('Non-Stop Nightshift', '', '', '01:00:00', 'More Music Variety through your weekend'),
('Greatest Hits', '', '', '06:00:00', 'Hit Music now!'),
('John Doe', 'http://www.myradiostation.localhost/johndoe', '', '08:00:00', 'Join John at the weekend');
除了链接之外,它没有任何重大问题。
它显示正确,如下所示:
http://i.stack.imgur.com/b91Dj.jpg
我该如何解决这个问题? (如果没有图像,我想我可以在字段中设置默认值),你会推荐什么?
简而言之,我应该如何在PHPMyadmin数据库中存储HTML链接?
由于
答案 0 :(得分:0)
您需要使用条件语句来检测没有链接的行。像这样:
<div class="show"><h3><b>
<?php
if ( empty( $result_ar['link'] ) ) {
echo $result_ar['presenter'];
}
else {
echo '<a href="' . $result_ar['link'] . '">' . $result_ar['presenter'] . '</a>';
}
?>
</b></h3>
答案 1 :(得分:0)
它不是PHP或MySQL问题。它是HTML 101.每当有<a
href="">
标记时,如果它是空白的,它将链接到该页面。我相信这会解决它:
<php>
If $array['link '] echo '<a>'
你可以让它更整洁,但这是基本的想法。