Это потому, что ваш "if ($ conn-> query ($ sql) === TRUE" находится вне времени, пока l oop.
Вы строите свой $ sql внутри while l oop, но вы выполняете запрос только через некоторое время l oop, следовательно, вы вставляете только последнюю запись.
// Предложение
<?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();
?>