Heim  >  Artikel  >  Backend-Entwicklung  >  JQuery und PHP realisieren die Upload-Anzeige eines dynamischen Fortschrittsbalkens

JQuery und PHP realisieren die Upload-Anzeige eines dynamischen Fortschrittsbalkens

不言
不言Original
2018-06-07 14:14:581459Durchsuche

Dieser Artikel stellt Ihnen die Kombination von JQuery und PHP vor, um die Funktion zur Anzeige des dynamischen Fortschrittsbalkens zu realisieren. Dieser Artikel stellt sie Schritt für Schritt im Detail vor. Interessierte sollten einen Blick darauf werfen

Windows-Änderungsmethode unter der Umgebung

Schritt 1: Ändern Sie die Größenbeschränkung der POST-Datei unter PHP5

1 .ini

Suchen: max_execution_time = 30, das ist die maximale Zeit, die jedes Skript ausführen kann, in Sekunden, ändern Sie sich zu: max_execution_time = 150

Suchen: max_input_time = 60, das ist die Zeit, die jedes Skript ausführen kann kann verbrauchen Die Zeit, die Einheit ist auch Sekunden, geändert zu:

max_input_time = 300

Gefunden: Memory_limit = 128M, dies ist der maximale Speicher, der vom ausgeführten Skript verbraucht wird, ändern Sie den Wert entsprechend entsprechend Ihren Anforderungen, hier geändert zu:memory_limit = 256M

Gefunden: post_max_size = 8M, die maximale Datenmenge, die vom Formular übermittelt wird, beträgt 8M. Dieses Element begrenzt nicht die Größe einer einzelnen hochgeladenen Datei, sondern die übermittelte Daten des gesamten Formulars. Der Geltungsbereich der Einschränkung umfasst alle über das Formular übermittelten Inhalte. Zum Beispiel: Beim Posten eines Beitrags werden der Beitragstitel, der Inhalt, die Anhänge usw. geändert in: post_max_size = 20M

Gefunden: upload_max_filesize = 2M, die maximal zulässige Größe der hochgeladenen Datei, geändert zu: upload_max_filesize = 10M (die Größe wird hier entsprechend der Nachfrage bestimmt)

Schritt 2: Kontrolle der Datei-Upload-Größe in der Apache-Umgebung

Ändern Sie das Verzeichnis in Apahce. Fügen Sie den folgenden Inhalt zu httpd.conf hinzu

LimitRequestBody 10485760

, was 10M=10*1024 ist *1024. In einigen Artikeln wurde erwähnt, dass es auf 600000000 geändert werden sollte

Starten Sie Apache neu und Sie können die gewünschte Größe in den Einstellungen sehen

HTML-Teil

<form action="index/index/upload" method="POST" enctype="multipart/from-data" id="uploadform" onSubmit="return false">
<p class="inpuys">
<input type="file" name="file" id="uploadfile" value="选择文件" class="cho">
<input type="submit" value="上传" id="submit_btn" class="sub btn btn-info">
</p>
</form>

JS-Teil

<script type="text/javascript" src="{$Think.config.web_root}js/jquery.min.js"></script>
<script type="text/javascript" src="{$Think.config.web_root}js/jquery.form.js"></script>
<script src="http://cdn.bootcss.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var progressbox=$("#progressbox");
var progressbar=$("#progressbar");
var progress=$("#progress");
var completed="0%";
var options={
beforeSubmit:beforeSubmit,
uploadProgress:OnProgress,
success:afterSuccess,
resetForm:true
};
$("#uploadform").submit(function(){
$(this).ajaxSubmit(options);
return false;
});
function OnProgress(event,position,total,percentComplete ) {
progressbar.width(percentComplete + "%");
progress.html(percentComplete + "%");
}
function afterSuccess(){
$("#output").html("上传完成!!");
}
function beforeSubmit(){
if (!$("#uploadfile").val()) {
$("#output").html("请选择文件!!");
return false;
}
progressbar.width(completed);
progress.html(completed);
}
});
</script>

THINKPHP-Methodenteil

public function upload(){
// 获取表单上传文件 例如上传了001.jpg
$file = request()->file(&#39;file&#39;);
// 移动到框架应用根目录/public/uploads/ 目录下
$info = $file->move(ROOT_PATH . &#39;public&#39; . DS . &#39;uploads&#39;);
if($info){
return "上传成功";
}else{
// 上传失败获取错误信息
echo $file->getError();
}
}

Das Obige ist der gesamte Inhalt dieses Artikels. Für weitere verwandte Inhalte achten Sie bitte auf die chinesische PHP-Website!

Verwandte Empfehlungen:

ThinkPHP und Ajax realisieren sekundäres Verknüpfungs-Dropdown-Menü

Das obige ist der detaillierte Inhalt vonJQuery und PHP realisieren die Upload-Anzeige eines dynamischen Fortschrittsbalkens. 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