为了账号安全,请及时绑定邮箱和手机立即绑定

浏览器不会显示新文件 - PHP

浏览器不会显示新文件 - PHP

湖上湖 2023-08-29 18:03:26
我正忙于修复每次显示文件时都会显示点的错误。修复错误后,点不再显示,而是显示我上传的第一个文件。但是,当我想上传新文件时,它不显示。旧文件仍保留在那里(应显示两个文件)。我曾经Continue修复过显示的点。我的 PHP 代码:<?phpif ( empty( $_FILES['file'] ) ) {?><html>  <head>  </head>  <body>    <form action="" enctype="multipart/form-data" method="post">      <input name="file" type="file"/>      <br>      <input name="submit" type="submit" value="Upload uw album" />    </form>  </body></html><?phpreturn;} else {?><html>  <head>  </head>  <body>    <form action="" enctype="multipart/form-data" method="post">      <input name="file" type="file"/>      <br>      <input name="submit" type="submit" value="Upload uw album" />    </form>  </body></html><?php}// Connectiegegevens$ftp_server = "myserver";$ftp_user_name = "myuser";$ftp_user_pass = "mypass";$source_file = $_FILES['file']['tmp_name'];$destination_folder = "/public_html/wp/wp-content/plugins/AbonneerProgrammas/Albums";$destination_file = $destination_folder . "/" . basename($_FILES['file']['name']);$conn_id = ftp_connect($ftp_server);// login with username and password$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); ftp_pasv($conn_id, true); // check connectieif ((!$conn_id) || (!$login_result)) {     echo "Het spijt ons, er is momenteel geen connectie met de server.";    // echo "Attempted to connect to $ftp_server for user $ftp_user_name";     exit; } else {     // echo "upload is gelukt";}// upload het bestand$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);// check upload status if (!$upload) { echo "Er is iets fout gegaan, excuses voor het ongemak";} else {// weergeef het bestand & download$contents = ftp_nlist($conn_id, $destination_folder);   foreach ($contents as $mp3_url) {     $filename = basename($mp3_url, ".mp3");// Dit zorgt ervoor dat de punten niet te zien zijn    if($filename == "." && "..") {    continue;    print_r($filename);   }    }?>
查看完整描述

1 回答

?
函数式编程

TA贡献1807条经验 获得超9个赞

您正在使用 foreach 循环来获取数据:


foreach ($contents as $mp3_url) { 

    $filename = basename($mp3_url, ".mp3");

// Dit zorgt ervoor dat de punten niet te zien zijn

    if($filename == "." && "..") {

    continue;

    print_r($filename);

   }

但是这样您只显示该循环最后一次迭代的结果:


   <tr>

     <td><?php echo "<a href='$mp3_url'>$filename</a>"; ?></td>

   </tr>

尝试:


$filenames = [];

foreach ($contents as $mp3_url) { 

    // {...} your remaining code

    $filenames[] = $mp3_url;

}

进而


foreach ($filenames as $filename) {

    echo $filename;

}

将这些文件名存储在数组中而不是字符串中将使您能够迭代它们。


查看完整回答
反对 回复 2023-08-29
  • 1 回答
  • 0 关注
  • 100 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信