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

我的代码只是将最后一个文件名插入到我的数据库中。我究竟做错了什么?

我的代码只是将最后一个文件名插入到我的数据库中。我究竟做错了什么?

PHP
白衣染霜花 2022-12-30 16:51:48
此代码回显指定目录中的所有文件名,但仅将文件夹中最后一个文件的名称插入数据库。我必须怎么做才能将目录中的所有文件名导入数据库?非常感谢<?php$servername = "localhost";$username = "root";$password = "mypswrd";$dbname = "mydb";// Create connection$conn = new mysqli($servername, $username, $password, $dbname);// Check connectionif ($conn->connect_error) {    die("Connection failed: " . $conn->connect_error);}$dir = "myFiles";    // directory path to files// Open a directory, and read its contentsif (is_dir($dir)) {    if ($dh = opendir($dir)) {        while (($file = readdir($dh)) !== false) {            echo $file . "</br>";            $sql = "INSERT INTO myTable (fileName) VALUES ('$file')";        }        closedir($dh);    }}if ($conn->query($sql) === true) {    echo "New record created successfully";} else {    echo "Error: " . $sql . "<br>" . $conn->error;}$conn->close();?>
查看完整描述

1 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

这是因为您的“if ($conn->query($sql) === TRUE”)在 while 循环之外。


你在 while 循环中构建你的 $sql,但你只在 while 循环之后执行查询,因此你只插入最后一条记录。


//建议


    <?php

$servername = "localhost";

$username = "root";

$password = "mypswrd";

$dbname = "mydb";


// Create connection

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection

if ($conn->connect_error) {

    die("Connection failed: " . $conn->connect_error);

}

$dir = "myFiles";    // directory path to files

// Open a directory, and read its contents

if (is_dir($dir)){

  if ($dh = opendir($dir)){

    while (($file = readdir($dh)) !== false){

         echo $file . "</br>";

          $sql = "INSERT INTO myTable (fileName) VALUES ('$file')";

            if ($conn->query($sql) === TRUE) {

            echo "New record created successfully";

        }

        else {

        echo "Error: " . $sql . "<br>" . $conn->error;

        }

         }

        closedir($dh);



    }

  }


$conn->close();


?>


查看完整回答
反对 回复 2022-12-30
  • 1 回答
  • 0 关注
  • 72 浏览

添加回答

举报

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