2015-08-21 35 views
0

嗨,大家我有一个问题,呼应图像或iframe,想法是有一个图像链接或数据库中的同一行中的iframe &我只想回应什么字符串内容是,如果它回声的iframe有一个图像的空白空间&下面是youtube视频,如果它回声的图像iframe不显示,他们都回声相同的行id标记url,我只想要一个基于字符串内容而不是两个echo的回声。PHP回声iframe或图像

这里是我用来获取东西的代码,它只是你想要关注的回声区域,我不确定是什么样的,如果还是我可以放在这里。

< ?php 

require_once("config.php"); 

$limit = (intval($_GET['limit']) != 0) ? $_GET['limit'] : 4; 

$offset = (intval($_GET['offset']) != 0) ? $_GET['offset'] : 0; 

$sql = "SELECT * FROM bookmarks WHERE 1 ORDER BY id DESC LIMIT $limit OFFSET 

    $offset"; 
    try { 
     $stmt = $DB->prepare($sql); 
     $stmt->execute(); 
     $results = $stmt->fetchAll(); 
    } catch (Exception $ex) { 
     echo $ex->getMessage(); 
    } 

    if (count($results) > 0) { 
     foreach ($results as $row) { 

     echo '<li><kef>' . $row['title'] . '</kef></br>'; 
     echo '<img src=' . $row['url'] . '></br>';  /*here */ 
     echo '<kef1>' . $row['url'] . '</kef1></br>'; /*and here*/ 
     echo '<kef2>' . $row['desc'] . '</kef2></br>'; 
     echo '<kef3>' . $row['tag'] . '</kef3></br> </br> </li>'; 
    } } 
?> 

这个脚本是一个get结果PHP

+0

对不起,关于代码预览的格式,我是新手。 – Ddanjovi

回答

0

最好的解决方案是将数据保存在数据库的不同列中。但是如果你想保持当前结构能够检查字符串是否包含HTML,那么它是一个iframe。否则,它是一个链接到图像。

<?php 

    if($row['url'] == strip_tags($row['url'])) { 
     //No HTML in string = link 
     echo '<img src="' . $row['url'] . '" alt="" />'; 

    } else { 
     //Contains HTML = iframe 
     echo $row['url']; 

    } 

?> 

这是假设您在数据库中已保存的值都用http://www.exempel.com<iframe src =" http: // www ... ">。如果iframe值也仅包含一个URL,则必须使用其他解决方案。

+0

谢谢你的回答,这已经奏效了。 :) – Ddanjovi

0

如果你知道URL是否为图像或视频时,您将它们保存在数据库中,那么你可以添加一个字段的媒体类型。然后,您可以在代码中的if语句中使用它,例如:

if (count($results) > 0) { 
    foreach ($results as $row) { 
     echo '<li><kef>' . $row['title'] . '</kef></br>'; 

     if ($row['mediaType'] === 'image') { 
      echo '<img src=' . $row['url'] . '></br>';  /*here */ 
     } if ($row['mediaType'] === 'video') { 
      echo '<kef1>' . $row['url'] . '</kef1></br>'; /*and here*/ 
     } 

     echo '<kef2>' . $row['desc'] . '</kef2></br>'; 
     echo '<kef3>' . $row['tag'] . '</kef3></br> </br> </li>'; 
    } 
}