数据库PDO(PHP)上的数组值

数据库PDO(PHP)上的数组值,php,html,Php,Html,当我试图编辑文件/图像内容时,我有一个奇怪的值,当我刷新数据库查看时,它有这个值 这是我编辑内容的代码 if(isset($_POST['btn-update'])){ $id = $_GET['id']; $title = $_POST['title']; $content = $_POST['content']; move_uploaded_file($_FILES["image"]["tmp_name"],"uploaded_files/uplo

当我试图编辑文件/图像内容时,我有一个奇怪的值,当我刷新数据库查看时,它有这个值

这是我编辑内容的代码

if(isset($_POST['btn-update'])){


    $id = $_GET['id'];

    $title = $_POST['title'];
    $content = $_POST['content'];


    move_uploaded_file($_FILES["image"]["tmp_name"],"uploaded_files/uploaded_files_articles_images/" . $_FILES["image"]["name"]);

    move_uploaded_file($_FILES["files"]["tmp_fname"],"uploaded_files/uploaded_files_articles/" . $_FILES["files"]["fname"]);


    $location = $_FILES['image']['name'];
    $location1 = $_FILES['files']['fname'];


    $sql = "UPDATE article SET title=:title, content=:content, image=:images, file=:files WHERE id=:id";

    $query = $db_con->prepare($sql);
    $query->bindParam(':id', $id, PDO::PARAM_INT);
    $query->bindParam(':title', $title, PDO::PARAM_STR);
    $query->bindParam(':content', $content, PDO::PARAM_STR);
    $query->bindParam(':images', $location, PDO::PARAM_STR);
    $query->bindParam(':files', $location1, PDO::PARAM_STR);
    $query->execute();

    header("Location: edit-index.php");
}

有什么问题吗。我在网上搜索过,但没有这样的。你有没有可能在同一个密钥下上传多个文件?在这种情况下,
$\u文件['xxx']['name']
等将是数组。你将不得不循环使用它们,并单独处理每一个

这就是一些原始的
var\u dump()
/
print\u r()
调试可能会有所帮助的地方

多亏了德文郡

我解决了我的问题

if(isset($_POST['btn-update'])){


    $id = $_REQUEST['id'];

    $title = $_POST['title'];
    $content = $_POST['content'];


    move_uploaded_file($_FILES["image"]["tmp_name"],"uploaded_files/uploaded_files_articles_images/" . $_FILES["image"]["name"]);

    move_uploaded_file($_FILES["files"]["tmp_fname"],"uploaded_files/uploaded_files_articles/" . $_FILES["files"]["name"]);


    $location = $_FILES['image']['name'];
    $location1 = $_FILES['files']['name'];

    var_dump($location);
    var_dump($location1);


    $sql = "UPDATE article SET title=:title, content=:content, image=:images, file=:files WHERE id=:id";

    $query = $db_con->prepare($sql);
    $query->bindParam(':id', $id, PDO::PARAM_INT);
    $query->bindParam(':title', $title, PDO::PARAM_STR);
    $query->bindParam(':content', $content, PDO::PARAM_STR);
    $query->bindParam(':images', $location);
    $query->bindParam(':files', $location1);
    $query->execute();

    header("Location: edit-index.php");
}
问题是这条线

$location1 = $_FILES['files']['fname'];
改成这个

$location1 = $_FILES['files']['name'];

如果您引用的是数组,那是因为您必须在bindParam语句中将数组绑定为字符串。数组无法转换为字符串。Owww我看到Wait试图删除
PDO::PARAM_STR
,但仍然是sameWell,这不是问题所在。问题是值是数组。无法将数组传递给数据库列。我不知道为什么该值为
array
。嗯,我如何编辑图像或文件内容。不,实际上那里已经有一个文件,我正在尝试编辑它。一次只有一个文件