PHP字符串变量到表sql插入中的多行

问题描述 投票:0回答:1

所以我正在编写这个小脚本,它将获取目录中仅包含文件夹名称的目录列表,并将它们插入到 sql 数据库的表中。我真的很接近,但是我将结果格式化为 sql 命令的多个条目的字符串变量,由于某种原因仅采用列表的最后一项。

令我困惑的是检查我的工作,我在获取目录列表等后回显 $speed,它看起来像(此文件夹),(另一个文件夹名称),(最后一个文件夹名称)等...如果我复制并在我的sql脚本中的VALUES后面粘贴它而不是$speed,它可以很好地插入列表,但是使用$speed变量,它只插入列表的最后一个,如上面的(最后一个文件夹名称)所示。这是我正在编写的脚本。任何帮助都将受到赞赏和尊重!

<?php
$iterator = new DirectoryIterator('FOLDER');
foreach ($iterator as $fileinfo) {
    if ($fileinfo->isDir()) {
        $speed = "(" . "'" . $fileinfo->getFilename() . "'" . ")" . "," . "\n";
        echo $speed;
    }
}
$servername = "localhost";
$username = "nathan";
$password = "mypasswrd";
$dbname = "datadatabase";

try {
  $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
  // set the PDO error mode to exception
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $sql = "INSERT IGNORE INTO senior_dir (studentcodedir)
  VALUES $speed('andthis')";
  // use exec() because no results are returned
  $conn->exec($sql);
  //echo "New record created successfully";
} catch(PDOException $e) {
  echo $sql . "<br>" . $e->getMessage();
}

$conn = null;



?>`

注意:我知道这与这里的这篇文章类似,但我的遇到了一个障碍,想知道是否有人能了解我可能会发生什么:在 MySQL 表上插入一个 php 字符串作为多行

php mysql variables directory
1个回答
0
投票

是的,它可以放在 foreach 内部,谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.