亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Muat naik fail mudah ke pangkalan data MySql dibangunkan dalam PHP (3)

Dalam bahagian ini, kami akan menyediakan beberapa fungsi tersuai untuk menjana alamat fail baharu dan menyimpannya dalam pangkalan data.

Pertama sekali, gambar yang kami muat naik mempunyai alamat, seperti 123.jpg, abc.png, dll.

Kami perlu mengekalkan akhiran .jpg, .png

Gunakan dua fungsi untuk memintas nama akhiran laluan fail asal Fungsi

strrchr() mencari kejadian terakhir rentetan dalam rentetan lain dan mengembalikan semua aksara dari kedudukan itu ke penghujung rentetan. rentetan.

fungsi substr() mengembalikan sebahagian daripada rentetan.

<?php
function fileext($filename)
{  
  return substr(strrchr($filename, '.'), 1);
}
?>

fileext ialah nama fungsi yang kami tetapkan dan nama fail ialah nama fail asal.

Seterusnya kami akan menjana nama laluan baharu untuk disimpan dalam pangkalan data

Di sini kami juga perlu menyesuaikan fungsi rawak

Tetapkan awalan CR- , Secara rawak pilih beberapa daripada huruf A-Z, a-z, 0-9 dan campurkan untuk menghasilkan awalan nama laluan baharu

Gunakan fungsi: strlen() Fungsi mengembalikan panjang rentetan.

<?php
function random($length)
{
  $hash = 'CR-';
  $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
  $max = strlen($chars) - 1;
  mt_srand((double)microtime() * 1000000);
  for($i = 0; $i < $length; $i++)
  {
    $hash .= $chars[mt_rand(0, $max)];
  }
  return $hash;
}
?>

Jana nama fail sasaran

<?php
$filename=explode(".",$_FILES['file']['name']);
  do{
    $filename[0]=random(10); //設(shè)置隨機數(shù)長度
    $name=implode(".",$filename);
      $uploadfile = $uploaddir.$name;
  }
  while(file_exists($uploadfile));
?>

fungsi explode() memecahkan rentetan menjadi tatasusunan.

fungsi implode() mengembalikan rentetan yang terdiri daripada elemen tatasusunan.

Akhir sekali pakej semua fail ke dalam fail PHP upload.php (nama boleh dibuat mengikut keperluan dan fungsi)

<?php
$uploaddir = "upfiles/";//設(shè)置文件保存目錄 注意包含/
$type=array("jpg","gif","bmp","jpeg","png");//設(shè)置允許上傳文件的類型
//獲取文件后綴名函數(shù)
function fileext($filename)
{
  return substr(strrchr($filename, '.'), 1);
}
//生成隨機文件名函數(shù)
function random($length)
{
  $hash = 'CR-';
  $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
  $max = strlen($chars) - 1;
  mt_srand((double)microtime() * 1000000);
  for($i = 0; $i < $length; $i++)
  {
    $hash .= $chars[mt_rand(0, $max)];
  }
  return $hash;
}
$a = strtolower(fileext($_FILES['file']['name']));
//判斷文件類型
if(!in_array(strtolower(fileext($_FILES['file']['name'])),$type))
{
  $text=implode(",",$type);
  echo "您只能上傳以下類型文件: ",$text,"<br>";
}
//生成目標文件的文件名
else{
  $filename=explode(".",$_FILES['file']['name']);
  do{
    $filename[0]=random(10); //設(shè)置隨機數(shù)長度
    $name=implode(".",$filename);
    $uploadfile = $uploaddir.$name;
  }
  while(file_exists($uploadfile));
  
  if (move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile))
  {
    if(is_uploaded_file($_FILES['file']['tmp_name']))
    {
      echo "上傳失敗!";
    }
    else
    {//輸出圖片預(yù)覽
      echo "<tr><td>您的文件已經(jīng)上傳完畢 上傳圖片預(yù)覽: <br><img src='$uploadfile'></td></tr>";
      echo "<tr><td><a href='tu2.php'style='margin-left: 3%;'>繼續(xù)上傳</a></td></tr>";
    }  //可以在前端HTML頁面顯示上傳的文件預(yù)覽
  }
}
?>


Meneruskan pembelajaran
||
<?php $uploaddir = "upfiles/";//設(shè)置文件保存目錄 注意包含/ $type=array("jpg","gif","bmp","jpeg","png");//設(shè)置允許上傳文件的類型 //獲取文件后綴名函數(shù) function fileext($filename) { return substr(strrchr($filename, '.'), 1); } //生成隨機文件名函數(shù) function random($length) { $hash = 'CR-'; $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz'; $max = strlen($chars) - 1; mt_srand((double)microtime() * 1000000); for($i = 0; $i < $length; $i++) { $hash .= $chars[mt_rand(0, $max)]; } return $hash; } $a = strtolower(fileext($_FILES['file']['name'])); //判斷文件類型 if(!in_array(strtolower(fileext($_FILES['file']['name'])),$type)) { $text=implode(",",$type); echo "您只能上傳以下類型文件: ",$text,"<br>"; } //生成目標文件的文件名 else{ $filename=explode(".",$_FILES['file']['name']); do{ $filename[0]=random(10); //設(shè)置隨機數(shù)長度 $name=implode(".",$filename); $uploadfile = $uploaddir.$name; } while(file_exists($uploadfile)); if (move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile)) { if(is_uploaded_file($_FILES['file']['tmp_name'])) { echo "上傳失敗!"; } else {//輸出圖片預(yù)覽 echo "<tr><td>您的文件已經(jīng)上傳完畢 上傳圖片預(yù)覽: <br><img src='$uploadfile'></td></tr>"; echo "<tr><td><a href='tu2.php'style='margin-left: 3%;'>繼續(xù)上傳</a></td></tr>"; } //可以在前端HTML頁面顯示上傳的文件預(yù)覽 } } ?>