国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

PHP開(kāi)發(fā)之多個(gè)檔案上傳到MySql資料庫(kù)(一)

前面的章節(jié)我們介紹了用PHP實(shí)作上傳一個(gè)檔案的教學(xué)。

朋友們就會(huì)有疑問(wèn),怎麼樣才能上傳多張多個(gè)檔案到資料庫(kù)?

重點(diǎn)在於放入幾個(gè)檔案以後點(diǎn)擊提交上傳之後所有的檔案一起上傳,並且每個(gè)檔案都給一個(gè)新的路徑。

2276.jpg

提供一個(gè)想法:

先取得每個(gè)上傳檔案的資訊放入一個(gè)自訂陣列中

<?php
    $uploadFiles = array();
?>

然後透過(guò)foreach循環(huán)顯示出來(lái)

<?php
    foreach($upfile as $key =>$value) {
      foreach($value as $k => $v){
        $uploadFiles[$k][$key]=$v;
      }
    }
    print_r($uploadFiles);
?>

結(jié)果展示類(lèi)似

<?php
/* 這里展示同時(shí)上傳2個(gè)文件信息
Array
(
    [0] => Array
        (
            [name] => 1.png
            [type] => image/png
            [tmp_name] => C:\Windows\php82E9.tmp
            [error] => 0
            [size] => 65646
        )
    [1] => Array
        (
            [name] => 2.png
            [type] => image/png
            [tmp_name] => C:\Windows\php82EA.tmp
            [error] => 0
            [size] => 70463
        )
)
*/
?>

最後就是把前面章節(jié)演示的發(fā)布一個(gè)文件的限制條件放到循環(huán)中進(jìn)行判斷

##獲取隨機(jī)檔案名稱(chēng)採(cǎi)用了取得當(dāng)前時(shí)間來(lái)作為新檔案名稱(chēng)的前綴,跟著後綴名稱(chēng)重新組合到資料庫(kù)。

<?php
    //上傳后的文件名定義(隨機(jī)獲取一個(gè)文件名(保持后綴名不變))
    $fileinfo = pathinfo($v["name"]);//解析上傳文件名字
    do{
      $newfile = date("Y-m-d,H-i-s") . rand(1000, 9999) . "." . $fileinfo["extension"];
    } 
    while (file_exists($path . $newfile));
?>

當(dāng)然連結(jié)資料庫(kù)表上傳檔案也是不可或缺的環(huán)節(jié)

<?php
    $link = mysqli_connect('localhost','username','password') or die("數(shù)據(jù)庫(kù)連接失??!");
    mysqli_select_db($link,'test');
    mysqli_set_charset($link,'utf8');
    
    $filepath = $path.$newfile;
    $name = $v['name'];
    $size = $v['size'];
    $sql = "insert into img(id,name,size,pic) value(null,'$name','$size','$filepath')";
    mysqli_query($link,$sql);
    mysqli_close($link);
?>


#

繼續(xù)學(xué)習(xí)
||
<?php $link = mysqli_connect('localhost','username','password') or die("數(shù)據(jù)庫(kù)連接失敗!"); mysqli_select_db($link,'test'); mysqli_set_charset($link,'utf8'); $filepath = $path.$newfile; $name = $v['name']; $size = $v['size']; $sql = "insert into img(id,name,size,pic) value(null,'$name','$size','$filepath')"; mysqli_query($link,$sql); mysqli_close($link); ?>
提交重置程式碼