-3

我有一个看起来像这样的 PHP 代码:

<?php
  if($_GET['mode'] == ""){ 
   $get_indhold = mysql_query("
 (SELECT * FROM Pictures
   ORDER BY Dato DESC LIMIT 1) 
 union all (SELECT * FROM Videos 
   ORDER BY Dato DESC LIMIT 1)
 order by Dato DESC LIMIT 1");
  $indhold = mysql_fetch_array($get_indhold);
?>

如您所见,它从两个不同的表中获取数据,仅显示按日期排序的最新内容。有用。我现在要做的是根据当前从哪个表中获取数据来显示不同的 HTML 代码。我尝试了一些 if/elseif 语句,但似乎没有任何效果。我想这样做的原因是因为图片和视频有不同的嵌入代码。如果我只是将两个代码都插入到我的文档中,当代码从我的数据库中获取图片时,我最终会得到一个空的视频播放器。

先感谢您!

4

1 回答 1

0

我会选择这个(但如果你已经碰巧有一个对图片或视频来说是唯一的值,你应该使用它作为标识符)。

$query="SELECT *, 1 AS is_picture FROM Pictures 
            UNION ALL
        SELECT *, 0 AS is_picture FROM Videos
            ORDER BY Dato DESC LIMIT 1";

$result = mysql_query($query);

if ($row = mysql_fetch_assoc($result)) {
    if($row["is_picture"]){
        //do picture stuff
    }else{
        //do video stuff
    }
}
于 2013-08-22T23:26:51.717 回答