我使用 PHP 创建了一个简单的代码,用于将图片上传到文件夹。
在服务器端我有
<?php
header('Content-Type: text/plain; charset=utf-8');
//check if file is actually an image etc.
//if is an image, send it to "upload" folder
move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $_FILES["file"]["name"]);
//save to the database a string like "upload/myImage.jpg", so I can render it on the site later
$stu = $dbh->prepare("UPDATE multi SET m_place=:name WHERE m_id = :id");
$stu->bindParam(':name', $n, PDO::PARAM_STR);
$n= "upload/".$_FILES["file"]["name"];
$stu->execute();
问题?
如果文件夹中的图像名称是英文,我会看到“myImage01.jpg”,并且在数据库中还会看到“upload/myImage01.jpg”。但是,如果图像的名称在文件夹中是希腊语,我会看到“χωΟΞ―Ο, τίτλο.jpg”和数据库中的“上传/χωΟΞ- Ο, τίτλο.jpg"。这是错误的。Insted χωΟΞ―Ο, τίτλο 我应该得到“χωρις τιτλο”(顺便说一句,那是希腊语的“无标题”)。所以,我猜是字符集问题?
我该如何解决?
提前致谢