ホームページ  >  記事  >  バックエンド開発  >  PHP 画像アップロードの学習ノートと経験_PHP チュートリアル

PHP 画像アップロードの学習ノートと経験_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:15:18873ブラウズ

PHP でファイルをアップロードするときは、#_FILE 変数を使用する必要があります。この自動グローバル変数 $_FILES は、PHP 4.1.0 バージョン以降でサポートされます。これより前は、バージョン 4.0.0 以降、PHP は $HTTP_POST_FILES 配列をサポートしていました。これらの配列には、アップロードしたファイルに関するすべての情報が含まれます。$_FILES を使用することをお勧めします。

PHP 設定オプション register_globals がオンの場合、関連する変数名も存在します。 PHP バージョン 4.2.0 以降、 register_globals のデフォルト値は off に設定されます。

ファイルアップロードフィールドの名前はuserfileであると仮定します。名前は何でも構いません。

$_FILES['ユーザーファイル']['名前']
クライアント マシン ファイルの元の名前。

$_FILES['ユーザーファイル']['タイプ']
ファイルの MIME タイプ。「image/gif」など、この情報に対するブラウザのサポートが必要です。

$_FILES['ユーザーファイル']['サイズ']
アップロードされたファイルのサイズ (バイト単位)。

$_FILES['userfile']['tmp_name']
ファイルのアップロード後にサーバーに保存される一時ファイル名。

$_FILES['ユーザーファイル']['エラー']
ファイルのアップロードに関連するエラー コード。 ['error'] は PHP 4.2.0 で追加されました。

処理機能:

move_uploaded_file()
(PHP 4 >= 4.0.3、PHP 5)

move_uploaded_file -- アップロードされたファイルを新しい場所に移動します

手順
bool move_uploaded_file (文字列ファイル名、文字列宛先)

この関数は、filename で指定されたファイルが正当なアップロード ファイル (つまり、PHP の HTTP POST アップロード メカニズムを通じてアップロードされたファイル) であることをチェックして保証します。ファイルが正当な場合は、宛先で指定されたファイルに移動されます。

filename が合法的にアップロードされたファイルではない場合、操作は行われず、move_uploaded_file() は FALSE を返します。

filename が有効なアップロード ファイルであるにもかかわらず、何らかの理由で移動できない場合、アクションは発生せず、move_uploaded_file() は FALSE を返します。警報も発令されています。

対象ファイルが既に存在する場合は上書きされます。

例:

コードは次のとおりです コードをコピー
if(move_uploaded_file($_FILES["magfile"]["tmp_name"], $uploaddir))
{
echo "アップデートOK!";
}

コピー(PHP 3、PHP 4、PHP 5)も使用できます
コピー -- ファイルをコピーします
bool コピー (文字列ソース、文字列宛先)

ソースから宛先にファイルをコピーします。成功した場合は TRUE、失敗した場合は FALSE を返します。

投稿ページ:

コードは次のとおりです コードをコピー

accept="image/x-png,image/gif,image/jpeg"> フォーム>



処理中のページ:

コードは次のとおりです

コードをコピー if($_FILES['picurl']['size'] > 0){ If(move_uploaded_file ($_FILES['picurl']['tmp_name'], $_FILES['picurl']['name'])){ echo "画像は正常にアップロードされました";
}

}



その他のファイルタイプ以外のフォームも $_POST['name'] を使用して受信できます。

phpで画像を簡単にアップロード

コードは次のとおりです コードをコピー

PHP を使用した画像アップロードの簡単な実装 頭>
if($_GET['アクション'] == 'アップファイル')
{
$target_path = 'temp_'.$_FILES['写真']['名前']; echo 'アップロードされた一時ファイル:' .$_FILES['photo']['tmp_name'] '
'; echo 'アップロードされたターゲット ファイル:' .$target_path '
'; echo $_SERVER["SCRIPT_FILENAME"] '
'; echo $_SERVER["OS"] '
'; //テスト関数: move_uploaded_file
//関数 copy を使用することもできます
move_uploaded_file($_FILES['写真']['tmp_name'], $target_path); echo "アップロード結果:"; if(file_exists($target_path)) {
if($_SERVER["OS"]!="Windows_NT"){
@chmod($target_path,0604); }
echo '成功!
PHP 画像アップロードの学習ノートと経験_PHP チュートリアル } その他 {
echo '失敗しました!'; }
出る
}
?>

登録

あなたの情報凡例>

  • あなたの写真
フィールドセット> フォーム> 本文>

上記のコードは学習のみに適しています。現在のサーバーで使用したい場合は、次のように記述する必要があります。

コードは次のとおりですコードをコピー

/*************************************************** * ***************************
パラメータの説明:

$max_file_size : アップロードするファイルのサイズ制限、単位 BYTE
$destination_folder: アップロードファイルパス
$watermark : ウォーターマークを追加するかどうか (1 はウォーターマークを追加することを意味し、それ以外はウォーターマークを追加しないことを意味します);

使用説明書:

1. GD ライブラリを使用する必要があるため、PHP.INI ファイルの「extension=php_gd2.dll」行の前にある ; 記号を削除します。 2. extension_dir = を php_gd2.dll が存在するディレクトリに変更します。
************************************************* * ****************************/

//アップロードファイルタイプリスト

$uptypes=array(

'画像/jpg',
'画像/jpeg',
'画像/png',
'画像/pjpeg',
'画像/gif',
'画像/bmp',
'画像/x-png'
);

$max_file_size=2000000; //アップロードファイルのサイズ制限、単位 BYTE

$destination_folder="uploadimg/" // ファイルのパスをアップロードします

$watermark=1; //ウォーターマークを追加するかどうか (1 はウォーターマークを追加することを意味し、それ以外はウォーターマークを追加しないことを意味します);
$watertype=1; //ウォーターマークのタイプ(1はテキスト、2は画像)
$waterposition=1; //ウォーターマークの位置 (1 は左下隅、2 は右下隅、3 は左上隅、4 は右上隅、5 は中央);
$waterstring="http://www.bKjia.c0m/" //ウォーターマーク文字列
$waterimg="xplore.gif" //透かし画像
; $imgpreview=1; //プレビュー画像を生成するかどうか(1は生成、他は生成しない);
$imgpreviewsize=1/2; //サムネイルの比率
?>


ZwelL 画像アップローダー
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。