在本教程中,我們將製作一個多文件上載PHP腳本,其中包含文件擴展名和大小的驗證,以進行安全上載並將文件信息保存到MySQL數據庫中。 在本教程中,我們將製作一個圖像上傳系統。這可用於上傳圖像,PDF,文檔,日誌或任何文件類型,確保您在腳本中進行更改。 如果您對文件上傳不熟悉,可以查看我們關於使用PHP進行簡單文件上傳的文章,以便開始使用基本知識。

HTML

這是一個簡單的HTML論壇,不會有任何樣式,因為我們專注於PHP上傳。

<form action="" method="POST" enctype="multipart/form-data">
    <input type="file" name="files[]" multiple="" />
    <input type="submit"/>
</form>
Add a comment

如果說一夜好眠過後,我們做的第一件事是「起床」,那麼接下來要做的事必然是在刷牙和吃早餐中選擇了。

但在這個網路謠言紛飛的年代,想必大家也是聽過各種說法:

先刷牙好,要不是吃早餐就是在吃細菌;

先吃早飯好,昨晚是刷了牙才睡覺,早上還有什麼可刷的?

Add a comment

無法執行錯誤訊息

開啟模擬器時遇到這個錯誤訊息

Cannot launch AVD in emulator.
Output: emulator:
ERROR: x86 emulation currently requires hardware acceleration! Please ensure Intel HAXM is properly installed and usable. CPU acceleration status: HAX kernel module is not installed!

Add a comment

Javascript filter函式,可以幫助我們過濾一個陣列中符合條件的元素,若不符合則刪除。不更改原陣列,而回傳新陣列。

filter 函式,接受一個 callback 函式,callback 可以有三個參數(element, index, array),

  • element:陣列元素的值。
  • index:陣列元素的所在位置。
  • arr:已經過 filter 處理的陣列

過濾陣列中值小於10的元素

var numbers = [20, 10, 9, 25, 1, 3, 8, 11];
var result = numbers.filter(function(element, index, arr){
    return element<=10;
});
console.log(result);
// [20, 10, 25, 11]

callback 中,回傳 false 的元素將會被移除,但注意元陣列並未改變,而是回傳新陣列。

Add a comment

利用CSS Flex將圖片高寬度max100%對應外部區塊,上下垂直左右置中顯示於區塊中,這樣一來不管圖片大小多大,圖片都能正常比例完整顯示於區塊中。

注意:Flex只支援較新的瀏覽器。

HTML

<div class="box"> 
     <img class="imgcenter" src="http://p3.pstatp.com/origin/2ee200021b01de8df129"> 
</div>
Add a comment

NPM 的安裝與使用

NPM 全名為Node Package Manager,是附屬在 Node.js 中的套件管理工具,我們在安裝 Node.js 時,就可以順便將 NPM 安裝到電腦中,並且在命令列 / 終端機模式中使用。

專案初始化

利用 npm 指令,可以協助我們建立 Node.js 專案的描述檔,或稱為初始化專案,命令如下:

//協助我們建立 Node.js 專案的描述檔
npm init

在打入 npm init 後,會被要求輸入幾個欄位

package name: 你這個 Project 要叫什麼名字
version: 你決定這個 Project 現在該是第幾版
description: Project 基本介紹
entry point: 進入點,如果要跑你的 Project 應該要執行哪個檔案
author: 作者(自己)
license: 你這個 Project 是採用什麼授權的
test command: 這個不太重要,待會會說明

基本上結束後,你可以看到這個資料夾底下,新增了一個 Package.json

Add a comment

如下將fetch寫成函數,返回值時會發現,控制台顯示我的數據Promise {[[PromiseStatus]]: "resolved", [[PromiseValue]],這樣的方式要如何取得資料來應用呢?。

將提取api fetch寫成函式調用

function apiGetAll (api) {
    return fetch(api, {
        headers: { "content-type": "application/json" }
    })
        .then(response => response.json().then(json => ({ json, response })))
        .then(({ json, response }) => {
            if (!response.ok) {
                return Promise.reject(json);
            }

            return json;
        })
        .then(response => response, error => error);
}
Add a comment

如要在電視上顯示 Chrome 的內容,請備妥下列項目:

  • Chromecast、Chromecast Ultra 或內建 Chromecast 的電視。
  • 符合最低系統需求的電腦和 Wi-Fi 網路。
  • 您的電腦必須具備 Chrome 瀏覽器。如果您尚未擁有符合版本要求的 Chrome,請下載或更新版本。
  • 將電腦和 Chromecast 裝置連上相同的 Wi-Fi 網路。請參閱本文,瞭解如何檢查 Chromecast 裝置的 Wi-Fi 網路。
Add a comment