Heim >Backend-Entwicklung >PHP-Problem >So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

藏色散人
藏色散人Original
2020-11-19 09:44:502220Durchsuche

Lösung für das Hochladen verstümmelter PHP-Dateien: Öffnen Sie zuerst die PHP-Datei und fügen Sie dann den Code „header(“Content-type: text/html; charset=utf-8“);“ hinzu.

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

Empfohlen: „PHP-Video-Tutorial

Lösung für verstümmelte chinesische Dateinamen in PHP-hochgeladenen Dateien

Das Hochladen von Dateien ist eine der am häufigsten verwendeten Funktionen, wenn wir Formularübermittlungen verarbeiten. Heute habe ich geschrieben Ich habe eine kleine Demo wie folgt erstellt:

Schauen wir uns zuerst die Struktur an:

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

HTML ist die Seite für die Formularübermittlung, PHP ist die Datei für die Verarbeitung des Formulars, Upload ist der Speicherort, an dem die hochgeladene Datei abgelegt wird post

html:
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>文件上传</title>
</head>
<body>
<form action="file_updata.php" method="post" enctype="multipart/form-data">
    <label for="files">文件上传</label>
    <input type="file" id="files" name="file">
    <br/>
    <input type="submit" name="submits" value="提交">
</form>
</body>
</html>
  php:
$file = $_FILES["file"];
if ($file["error"] > 0) {
    echo "错误:" . $file["error"];
} else {
    echo "文件名称:" . $file["name"] . "</br>";
    echo "文件类型:" . $file["type"] . "</br>";
    echo "文件大小:" . ($file["size"] / 1024) . "K</br>";
    echo "文件临时存储的位置:" . $file["tmp_name"] . "</br>";
    //保存上传的文件
    if (file_exists("upload" . $file["name"])) {
        echo $file["name"] . "文件已经存在";
    } else {
        //若是目录不存在则将该文件上传
        move_uploaded_file($file[&#39;tmp_name&#39;], "upload/" . $file["name"]);
        echo &#39;文件上传成功!&#39;;
    }
}

Ich habe eine .txt-Datei wie folgt hochgeladen:

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

Ausführung:

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

Sie können sehen, dass es sehr reibungslos ist. Schauen wir uns das Ergebnis an:

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

Die Datei Das, was wir zu diesem Zeitpunkt hochgeladen haben, ist das, was wir wollen, aber das ist nicht der Fall. Es liegt eine Situation mit verstümmeltem Code vor, ähm, okay, lösen wir es:

Fügen Sie zunächst diesen Code zum Kopf der PHP-Datei hinzu:

header("Content-type: text/html; charset=utf-8");
  而后定义一个变量:
$name = iconv(&#39;utf-8&#39;,&#39;gb2312&#39;,"upload/".$file["name"]);
  好,那咱们看看整个的PHP页面:
header("Content-type: text/html; charset=utf-8");
$file = $_FILES["file"];
if($file["error"]>0){
    echo "错误:".$file["error"];
}else{
    $name = iconv(&#39;utf-8&#39;,&#39;gb2312&#39;,"upload/".$file["name"]);
    echo "文件名称:".$file["name"]."</br>";
    echo "文件类型:".$file["type"]."</br>";
    echo "文件大小:".($file["size"]/1024)."K</br>";
    echo "文件临时存储的位置:".$file["tmp_name"]."</br>";
    //保存上传的文件
    if(file_exists("upload".$file["name"])){
        echo $file["name"]."文件已经存在";
    }else{
        //若是目录不存在则将该文件上传
        if(move_uploaded_file($file[&#39;tmp_name&#39;],$name)){
//            move_uploaded_file($file[&#39;tmp_name&#39;],"upload/".$file["name"]);
            echo &#39;文件上传成功!&#39;;
            echo &#39;图片信息:&#39;;
            print_r($file);
        }
    }

Läuft:

So lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien

Perfekt.

Das obige ist der detaillierte Inhalt vonSo lösen Sie das verstümmelte Problem beim Hochladen von PHP-Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn