ホームページ バックエンド開発 PHPチュートリアル php+mysqlを使用してファイルを保存および出力する方法_PHPチュートリアル

php+mysqlを使用してファイルを保存および出力する方法_PHPチュートリアル

Jul 21, 2016 pm 04:06 PM
php+mysql 一般的に 優れた 保存 利用 戻る そして どうやって 書類 サーバ 地元 脚本 出力 行為

ローカル ファイルがサーバーにアップロードされた後、サーバー スクリプトはファイルをマシンの特定のディレクトリに
ファイルとして保存する方法が一般的です。この時点で、一部のプログラムでは、ファイル名を自動的に変更したり、名前にアップロード時刻を追加したりして、ファイル名の一意性を確保します。このようにして、ファイルの元の名前が失われます。ファイル名を使用して特定のファイル情報をクエリすることには多くの困難があり、ファイルの統合管理には役立ちません。その 1 つは、ファイルをデータベースに保存し、データベースの強力な機能を使用してファイルに対するさまざまな操作を簡単に実行することです。この記事では 2 番目の方法を使用します。

この一連のプログラムは、Web ページを通じてハードディスクからサーバーのデータベースにファイルをアップロードし、
ファイルの内容を読み取る方法を示します。

使用手順:
全部で5つのプログラムがあり、手順は次のとおりです:
1. file.sql ---このプログラムで使用されるデータベーステーブルの構造 [注: 使用されるデータベースはtest]
2. Upload.php - -- フォームをアップロードします
3. submit.php --- アップロードハンドラー
4. show_info.php --- アップロードされたファイル情報の一部を表示します
5. - [ダウンロード]ファイルを表示

/// ////////////////////////////////////// ////////////// //////////////////
(1) file.sql ---
//簡単な説明
データベースアップロードされたファイルの基本情報を保存する構造体です。通常の blob 型では最大 64K バイトを保存できるため、フィールドにはロングテキスト型を使用してください。また、一般に、PHP のデフォルト設定ではアップロード ファイルの最大サイズは 2M です。アップロードされるファイルが特に大きい場合は、php.ini の設定を調整することを忘れないでください。
//ファイルソースコード
create table accept(
id int NOT NULL auto_increment, #主キー、自動蓄積
file_data longblob, #ファイル内容
file_type varchar(100), #ファイルタイプ
file_name var char(255), file_size int, #ファイルサイズ
PRIMARY KEY(id) #主キー
)

//////////////////////////// //// ///////////////////////////////////////
(2)アップロードします。 php ---
/ /簡単な説明
アップロード インターフェイスで、ユーザーはファイルを選択し、それを submit.php に送信して処理します
VALUE を設定することで、MAX_FILE_SIZE という隠し値フィールドがあることに注意してください。アップロードするファイルのサイズを
制限することができます。
//プログラムのソースコード


'multipart/form-data' name='myform' action='submit.php'
method='post'>
;tr>アップロード ファイルを選択 ;td Colspan='2'><入力名='送信' 値='アップロード'
タイプ='送信'>
本文>


////////////////////////////// ////////////////////////////////
(3)submit.php ---
//簡単な説明
アップロードユーザーは、ファイルの基本情報とともにファイルをデータベースに保存します
//プログラム ソース コード
if($myfile != "none" && $myfile != "") { //これで、ファイルをアップロードします

/ タイムアウト制限時間を設定します。デフォルト時間は 30 秒で、時間制限がない場合は 0 に設定します
$time_limit=60;
set_time_limit($time_limit); //

=fopen($myfile, "rb");
if(!$fp) die("ファイルオープンエラー");
$file_data = addslashes($fp, filesize($myfile));
fclose($ fp); $ myfile);

// ファイル形式、名前、サイズ
$ file_type = $ myfile_type;
$ file_name = $ myfile_name , // データベースに接続し、ファイル Stocking をデータベースに配置します。 $ conn = mysql_connect ("127.0 .0.1", "***", "***");
if (! $ CONN) DIE ("Error: MySQL Connect Failed");
mysql_select_db ( "test",$conn);

L $ Result = MySQL_QUERY ($ SQL)

// 次の文は INSERT ステートメントの ID を取り出します
$ ID = mysql_insert_id ();

mysql_close ($ conn) // デフォルトのタイムアウト設定を復元します

;アップロードに成功しました ---";
echo "& lt; a href = 'show_info.php? ID = $ id' & gt; Else {h echo "任意のファイルをアップロードします"; /////////////////////////////////////////
(4 ) show_info.php ---
//簡単な説明
ファイルの基本情報 [ファイル名とファイル サイズ] をデータベースから取得します。
//プログラムのソースコード
if(!$conn) die("エラー: mysql 接続に失敗しました");
mysql_select_db("test",$conn);

$sql = "受信場所からファイル名を選択しますid=$id";
$result = mysql_query($sql);
if(!$result) die(" error: mysql query");

// 指定されたレコードがない場合はエラーが報告されます
$num=mysql_num_rows($result);
if($num<1) die("error: no this Recorder");

//プログラムの次の 2 つの文は次のように書くこともできます
//$row =mysql_fetch_object($result);
//$name=$row->name;
$name = mysql_result($result,0,"file_name "); $size = mysql_result($result,0,"file_size");

mysql_close($conn);

echo "
アップロードされたファイル情報:"
echo "
ファイルの名前 - $name ";
echo "
ファイルのサイズ - $size";
echo "
添付ファイル ";
?>

////////////////////////////////////////////// /////////////////////////
(5)show_add.php ---
//簡単な説明
データベースからファイルの内容を取得します
/ /プログラムのソースコード
if(!$conn) die("エラー: mysql 接続に失敗しました");
mysql_select_db("test",$conn);
$sql = "select * from accept where id=$id" ;
$result = mysql_query($sql);
if(!$result) die("エラー: mysql クエリ");
if($num<1);エラー: このレコーダーはありません");

$data = mysql_result($result,0,"file_data");
$type = mysql_result($result,0 ,"file_type");
$name = mysql_result($result, 0,"file_name");

mysql_close($conn);

//まず、対応するファイルヘッダを出力し、元のファイル名を復元します
header( "Content-type:$type"); -Disposition:attachment; filename=$name");
echo $data;
?>

このプログラムは win2000 pro + apache 1.13.19 + php Passed under 4.0.5 + mysql 3.23.36 で動作します。​



http://www.bkjia.com/PHPjc/315293.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/315293.html

技術記事
ローカル ファイルがサーバーにアップロードされた後、サーバーのスクリプトによってファイルが保存されます。1 つはマシンの特定のディレクトリにファイルとして保存する方法ですが、さまざまな方法があります...

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

編集用のスクリプトを作成するにはどうすればよいですか?編集によるスクリプトの作成方法のチュートリアル 編集用のスクリプトを作成するにはどうすればよいですか?編集によるスクリプトの作成方法のチュートリアル Mar 13, 2024 pm 12:46 PM

Cutting は、包括的な編集機能、可変速度のサポート、さまざまなフィルターや美容効果、豊富な音楽ライブラリ リソースを備えたビデオ編集ツールです。このソフトでは動画を直接編集したり、編集スクリプトを作成したりすることができますが、どのように行うのですか?このチュートリアルでは、エディターがスクリプトを編集および作成する方法を紹介します。作成方法: 1. コンピュータ上で編集ソフトウェアをクリックして開き、「作成スクリプト」オプションを見つけてクリックして開きます。 2. 作成台本ページで「台本タイトル」を入力し、概要に撮影内容の簡単な紹介文を入力します。 3. アウトラインに「ストーリーボードの説明」オプションを表示するにはどうすればよいですか?

0x80004005 エラー コードが表示された場合の対処方法 エディターは、0x80004005 エラー コードを解決する方法を説明します。 0x80004005 エラー コードが表示された場合の対処方法 エディターは、0x80004005 エラー コードを解決する方法を説明します。 Mar 21, 2024 pm 09:17 PM

パソコン上のフォルダーを削除または解凍するときに、「エラー 0x80004005: 不明なエラー」というダイアログ ボックスが表示されることがあります。この状況はどう解決すればよいでしょうか?エラー コード 0x80004005 が表示される理由は実際にはたくさんありますが、そのほとんどはウイルスによって引き起こされます。DLL を再登録して問題を解決できます。以下では、エディターがエラー コード 0x80004005 の処理体験を説明します。 。一部のユーザーは、コンピュータの使用時にエラー コード 0X80004005 を表示されます。0x80004005 エラーは主に、コンピュータが特定のダイナミック リンク ライブラリ ファイルを正しく登録していないこと、またはファイアウォールがコンピュータとインターネット間の HTTPS 接続を許可していないことが原因で発生します。それでどうですか

Linuxシステムで.shファイルを実行するにはどうすればよいですか? Linuxシステムで.shファイルを実行するにはどうすればよいですか? Mar 14, 2024 pm 06:42 PM

Linuxシステムで.shファイルを実行するにはどうすればよいですか? Linux システムでは、.sh ファイルはシェル スクリプトと呼ばれるファイルであり、一連のコマンドを実行するために使用されます。 .sh ファイルの実行は非常に一般的な操作です。この記事では、Linux システムで .sh ファイルを実行する方法と具体的なコード例を紹介します。方法 1: 絶対パスを使用して .sh ファイルを実行する Linux システムで .sh ファイルを実行するには、絶対パスを使用してファイルの場所を指定できます。具体的な手順は次のとおりです。 ターミナルを開きます。

小紅書で透かしなしで写真を保存する方法 小紅書で透かしなしで写真を保存する方法 小紅書で透かしなしで写真を保存する方法 小紅書で透かしなしで写真を保存する方法 Mar 22, 2024 pm 03:40 PM

小紅書には誰でも自由に閲覧できる豊富なコンテンツがあり、毎日の退屈を解消し、自分自身を助けるためにこのソフトウェアを使用することができます。このソフトウェアを使用する過程で、時々さまざまな美しいものを見ることができます。写真を保存したいと思う人はたくさんいますが、しかし、保存された写真には透かしがあり、これは非常に影響力があります。誰もがここで透かしなしで写真を保存する方法を知りたがっています。エディターは必要な人のために方法を提供します。誰でも理解してすぐに使用できます。 1. 画像の右上隅にある「...」をクリックしてリンクをコピーします。 2. WeChat アプレットを開きます。 3. WeChat アプレットでサツマイモ ライブラリを検索します。 4. サツマイモ ライブラリに入り、取得することを確認します。リンク 5. 写真を取得して携帯電話のアルバムに保存します

Quark Cloud Disk から Baidu Cloud Disk にファイルを転送するにはどうすればよいですか? Quark Cloud Disk から Baidu Cloud Disk にファイルを転送するにはどうすればよいですか? Mar 14, 2024 pm 02:07 PM

Quark Netdisk と Baidu Netdisk は現在、ファイルの保存に最も一般的に使用されている Netdisk ソフトウェアです。Quark Netdisk 内のファイルを Baidu Netdisk に保存したい場合は、どうすればよいですか?今回は、Quark Network Disk コンピュータから Baidu Network Disk にファイルを転送するためのチュートリアル手順を編集者がまとめたので、その操作方法を見てみましょう。 QuarkネットワークディスクファイルをBaiduネットワークディスクに保存するにはどうすればよいですか? Quark Network Disk から Baidu Network Disk にファイルを転送するには、まず Quark Network Disk から必要なファイルをダウンロードし、次に Baidu Network Disk クライアントでターゲット フォルダーを選択して開きます。次に、Quark Cloud Disk からダウンロードしたファイルを Baidu Cloud Disk クライアントによって開かれたフォルダーにドラッグ アンド ドロップするか、アップロード機能を使用してファイルを Baidu Cloud Disk に追加します。アップロードが完了したら、Baidu Cloud Disk にファイルが正常に転送されたかどうかを必ず確認してください。それでおしまい

hiberfil.sys ファイルとは何ですか? hiberfil.sysは削除できますか? hiberfil.sys ファイルとは何ですか? hiberfil.sysは削除できますか? Mar 15, 2024 am 09:49 AM

最近、多くのネチズンが編集者に「hiberfil.sys ファイルとは何ですか?」と尋ねました。 hiberfil.sys は C ドライブのスペースを多く消費し、削除される可能性がありますか?エディターは、hiberfil.sys ファイルを削除できることを通知します。以下で詳細を見てみましょう。 hiberfil.sys は Windows システムの隠しファイルであり、システム休止状態ファイルでもあります。通常、C ドライブのルート ディレクトリに保存され、そのサイズはシステムに搭載されているメモリのサイズと同等です。このファイルはコンピュータが休止状態になっているときに使用され、リカバリ中に以前の状態にすばやく復元できるように、現在のシステムのメモリ データが含まれています。そのサイズはメモリ容量と等しいため、より多くのハードドライブスペースを占有する可能性があります。冬休み

Dnsmasq を DHCP リレー サーバーとして構成する方法 Dnsmasq を DHCP リレー サーバーとして構成する方法 Mar 21, 2024 am 08:50 AM

DHCP リレーの役割は、2 つのサーバーが異なるサブネット上にある場合でも、受信した DHCP パケットをネットワーク上の別の DHCP サーバーに転送することです。 DHCP リレーを使用すると、ネットワーク センターに集中 DHCP サーバーを展開し、それを使用してすべてのネットワーク サブネット/VLAN に IP アドレスを動的に割り当てることができます。 Dnsmasq は、一般的に使用される DNS および DHCP プロトコル サーバーであり、ネットワーク内の動的ホスト構成の管理を支援する DHCP リレー サーバーとして構成できます。この記事では、dnsmasq を DHCP リレー サーバーとして構成する方法を説明します。コンテンツ トピック: ネットワーク トポロジ DHCP リレー上の静的 IP アドレスの構成 集中型 DHCP サーバー上の DHCP リレー D

Douyin動画をダウンロードして保存する方法 Douyin動画をダウンロードして保存する方法 Mar 29, 2024 pm 02:16 PM

1.Douyinアプリを開き、ダウンロードして保存したい動画を見つけて、右下隅の[共有]ボタンをクリックします。 2. 表示されるポップアップウィンドウで、2 行目の機能ボタンを右にスライドし、[ローカルに保存] を見つけてクリックします。 3. この時点で新しいポップアップ ウィンドウが表示され、ユーザーはビデオのダウンロードの進行状況を確認し、ダウンロードが完了するまで待つことができます。 4. ダウンロードが完了すると、[保存しました。アルバムに移動して表示してください] というメッセージが表示され、ダウンロードしたビデオがユーザーの携帯電話のアルバムに正常に保存されます。

See all articles