<?php
session_start();
include('config/connexionDB.php');
include('functions/search_user.php');
if (!isset($_SESSION['id'])){
header('Location: index.php');
exit;
}
// On récupère les informations de l'utilisateur connecté
$req = $DB->query("SELECT *
FROM posts
ORDER BY id ");
$req = $req->fetchAll();
?>`
<?php
foreach($req as $r){
$info = new SplFileInfo($r['fileNameNew']);
$extaudio = array('.mp3', '.flac');
$extimage = array('.png', '.jpg');
if($info = $extaudio){
?>
<div class="card" style="width: 45rem;">
<div class="card-body" align="center">
<h6 align="left"><?= $r['author'] ?></h6>
<?php echo"<audio src='uploads/".$r['fileNameNew']."' controls>;"; ?>
<h3><?= $r['content'] ?></h5>
<a href="#" class="btn btn-success">Like</a>
<a href="#" class="btn btn-danger">Dislike</a>
</div>
</div><br>
<?php
}elseif($info = $extimage){
?>
<div class="card" style="width: 45rem;">
<div class="card-body" align="center">
<h6 align="left"><?= $r['author'] ?></h6>
<h3><?= $r['content'] ?></h5>
<a href="#" class="btn btn-success">Like</a>
<a href="#" class="btn btn-danger">Dislike</a>
<?php echo "<img src='uploads/".$r['fileNameNew']."'>"; ?>
</div>
</div><br>
<?php
}
}
?>`
答案 0 :(得分:0)
几件事。
$info = $extimage
是错误的。使用==
进行比较。都在if和elseif中。
if($info == $extaudio){
单个等号分配一个值,即。 $age = 40
将年龄设置为40,如果$ age等于40,则$age == 40
返回true
或false
。
第二,$info = new SplFileInfo($r['fileNameNew']);
。 $info
是一个对象,因此直接比较它们总是假的。
http://php.net/manual/en/class.splfileinfo.php
相反,获取文件扩展名并检查它是否在您的数组中。
http://php.net/manual/en/splfileinfo.getextension.php
if(in_array($info->getExtension(), $extaudio)){
希望这会有所帮助!祝你好运