Heim > Artikel > Backend-Entwicklung > Kombination von PHP und HTML zur Implementierung von Code zum Hochladen von Bilddateien auf den Server
Der Inhalt dieses Artikels befasst sich mit dem Code, der PHP und HTML zum Hochladen von Bilddateien auf den Server kombiniert. Ich hoffe, dass er für Sie hilfreich ist.
1.html-Code
<body> <form action="" method="post" enctype="multipart/form-data" name="upload_form"> <label>选择图片文件</label> <input name="imgfile" type="file" accept="image/gif, image/jpeg"/> <input name="upload" type="submit" value="上传" /> </form> </body>
2.php-Code
if (isset($_FILES['imgfile']) && is_uploaded_file($_FILES['imgfile']['tmp_name'])) { $imgFile = $_FILES['imgfile']; $upErr = $imgFile['error']; if ($upErr == 0) { $imgType = $imgFile['type']; //文件类型。 /* 判断文件类型,这个例子里仅支持jpg和gif类型的图片文件。*/ if ($imgType == 'image/jpeg' || $imgType == 'image/gif') { $imgFileName = $imgFile['name']; $imgSize = $imgFile['size']; $imgTmpFile = $imgFile['tmp_name']; /* 将文件从临时文件夹移到上传文件夹中。 注意:upfile这个文件夹必须先创建好,不然会报错。 */ move_uploaded_file($imgTmpFile, 'upfile/'.$imgFileName); /*显示上传后的文件的信息。*/ $strPrompt = sprintf("文件%s上传成功<br>" . "文件大小: %s字节<br>" . "<img src='upfile/%s'>" , $imgFileName, $imgSize, $imgFileName ); echo $strPrompt; } else { echo "请选择jpg或gif文件,不支持其它类型的文件。"; } } else { echo "文件上传失败。<br>"; switch ($upErr) { case 1: echo "超过了php.ini中设置的上传文件大小。"; break; case 2: echo "超过了MAX_FILE_SIZE选项指定的文件大小。"; break; case 3: echo "文件只有部分被上传。"; break; case 4: echo "文件未被上传。"; break; case 5: echo "上传文件大小为0"; break; } } } else { }
3.php-Code-Analyse:
$_FILES ist eine Array-Variable, die zum Speichern hochgeladener Dateiinformationen verwendet wird.
$_FILES['imgfile'] gibt die Informationen der hochgeladenen Datei an, nachdem das Steuerelement mit dem Dateidomänennamen „imgfile“ an den Server übermittelt wurde.
Eine hochgeladene Datei weist die folgenden Attributinformationen auf:
'Name': Der Name der hochgeladenen Datei auf dem Client.
'type': Der MIME-Typ der Datei, z. B. „image/jpeg“.
'size': Die Größe der hochgeladenen Datei in Bytes.
'tmp_name': Beim Hochladen wird die hochgeladene Datei serverseitig in einem temporären Ordner gespeichert. Über dieses Attribut können Sie den temporären Dateinamen abrufen.
'error': Fehlercode beim Datei-Upload. Wenn der Upload erfolgreich ist, ist dieser Wert 0. Die Bedeutung anderer Werte ist wie folgt:
1: Überschreitet die in php.ini festgelegte Upload-Dateigröße.
2: Die durch die Option MAX_FILE_SIZE angegebene Dateigröße wurde überschritten.
3: Nur ein Teil der Datei wird hochgeladen.
4: Die Datei wurde nicht hochgeladen.
5: Die hochgeladene Dateigröße beträgt 0.
Der Code bestimmt zunächst, ob die Variable $_FILES['imgfile'] vorhanden ist, und die Datei, auf die $_FILES['imgfile']['tmp_name' zeigt. ]-Variable wird hochgeladen. Wenn das Attribut 0 ist, verschieben Sie das hochgeladene Bild aus dem temporären Ordner in den Upfile-Ordner, zeigen Sie die hochgeladenen Dateiinformationen an und zeigen Sie das hochgeladene Bild an.
Wenn der Fehlerwert nicht 0 ist, bedeutet dies, dass der Upload fehlgeschlagen ist und die Fehlermeldung angezeigt wird.
4. Vollständiger Code
上传图片文件 " . "文件大小: %s字节
" . "" , $imgFileName, $imgSize, $imgFileName ); echo $strPrompt; } else { echo "请选择jpg或gif文件,不支持其它类型的文件。"; } } else { echo "文件上传失败。
"; switch ($upErr) { case 1: echo "超过了php.ini中设置的上传文件大小。"; break; case 2: echo "超过了MAX_FILE_SIZE选项指定的文件大小。"; break; case 3: echo "文件只有部分被上传。"; break; case 4: echo "文件未被上传。"; break; case 5: echo "上传文件大小为0"; break; } } } else { /*显示表单。*/ ?> <body> <form action="" method="post" enctype="multipart/form-data" name="upload_form"> <label>选择图片文件</label> <input name="imgfile" type="file" accept="image/gif, image/jpeg"/> <input name="upload" type="submit" value="上传" /> </form> </body>
Empfohlene verwandte Artikel:
Was sind PHP-Typbeschränkungen? Einführung und Verwendung von PHP-Typbeschränkungen
Das obige ist der detaillierte Inhalt vonKombination von PHP und HTML zur Implementierung von Code zum Hochladen von Bilddateien auf den Server. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!