Heim >Backend-Entwicklung >PHP-Tutorial > 关于一次下传多个图片的插件有没有

关于一次下传多个图片的插件有没有

WBOY
WBOYOriginal
2016-06-13 12:51:48904Durchsuche

关于一次上传多个图片的插件有没有?
像discuz发帖那样,一次上传多个图片,然后将所有上传的图片路径插入到编辑器中。

有没有?


------解决方案--------------------
找个JS批量上传插件,主要是美观而已,技术角度还是个表单。

从http协议实现角度,下面的php代码是一个活生生的协议细节:

<?php  <br />
function do_post_request($url, $postdata, $files = null) <br>
{ <br>
    $data = ""; <br>
    $boundary = "---------------------".substr(md5(rand(0,32000)), 0, 10); <br>
       <br>
    //Collect Postdata <br>
    foreach($postdata as $key => $val) <br>
    { <br>
        $data .= "--$boundary\n"; <br>
        $data .= "Content-Disposition: form-data; name=\"".$key."\"\n\n".$val."\n"; <br>
    } <br>
     <br>
    $data .= "--$boundary\n"; <br>
    <br>
    //Collect Filedata <br>
    foreach($files as $key => $file) <br>
    { <br>
        $fileContents = file_get_contents($file['tmp_name']); <br>
        <br>
        $data .= "Content-Disposition: form-data; name=\"{$key}\"; filename=\"{$file['name']}\"\n"; <br>
        $data .= "Content-Type: image/jpeg\n"; <br>
        $data .= "Content-Transfer-Encoding: binary\n\n"; <br>
        $data .= $fileContents."\n"; <br>
        $data .= "--$boundary--\n"; <br>
    } <br>
  <br>
    $params = array('http' => array( <br>
           'method' => 'POST', <br>
           'header' => 'Content-Type: multipart/form-data; boundary='.$boundary, <br>
           'content' => $data <br>
        )); <br>
<br>
   $ctx = stream_context_create($params); <br>
   $fp = fopen($url, 'rb', false, $ctx); <br>
   <br>
   if (!$fp) { <br>
      throw new Exception("Problem with $url, $php_errormsg"); <br>
   } <br>
  <br>
   $response = @stream_get_contents($fp); <br>
   if ($response === false) { <br>
      throw new Exception("Problem reading data from $url, $php_errormsg"); <br>
   } <br>
   return $response; <br>
} <br>
<br>
//set data (in this example from post) <br>
<br>
//sample data <br>
$postdata = array( <br>
    'name' => $_POST['name'], <br>
    'age' => $_POST['age'], <br>
    'sex' => $_POST['sex']  <div class="clear">
                 
              
              
        
            </div>
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