ホームページ >バックエンド開発 >PHPチュートリアル >PHP で写真をアップロードしてデータベースに保存する例 Sharing_PHP チュートリアル

PHP で写真をアップロードしてデータベースに保存する例 Sharing_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:36:12849ブラウズ

ほとんどの人はデータベースへのパスを保存することで画像をアップロードしますが、挿入するときは非常に高速で、削除するときはファイルを見つけて削除する必要があります。コードを直接保存すると、データベースが削除されます。注意: この場合、データベースのサイズが増加しますので、適宜使用してください。

テーブル構造


コードをコピー コードは次のとおりです:
CREATE TABLE `upload` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`type` varchar(20) NOT NULL,
`data ` mediablob NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

index.html


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














post.php

コードをコピー

コードは次のとおりです:if ($_FILES["file"]["error"] > 0)
{
echo "エラー: " . $_FILES["file"]["error"] . "
";
}
else
{
$type = $_FILES["file"]["type"];
$サイズ = $ _FILES['ファイル']['サイズ'];
$tmp=$_FILES["ファイル"]["tmp_name"];
$fp = fopen($tmp,'rb');
$data = bin2hex(fread ($fp,$size));
$dsn='mysql:host=localhost;dbname=test';
echo '
';
try{
$pdo = new PDO($dsn, 'root' ,'root');
$pdo->exec("INSERT INTO `upload`(`type`,`data`) 値 ('$type',0x$data)"); lastInsertId();
echo 'アップロード成功!View' PDOException $e){
を使用してスルー スルー スルー オフ ‐ オフ ‐ ‐ ‐‐ ‐‐‐‐ そして
view.php



コードをコピー

コードは次のとおりです:


$id = $_GET['id'];
if(is_numeric($id)){
$ dsn='mysql :host=localhost;dbname=test';

try{

$pdo = new PDO($dsn,'root','root');
$rs = $pdo->query('select * from `upload` where `id`='.$id);

$row = $rs->fetchAll(); $data = $row[0] header("Content-Type:${data[ 'type'] }"); echo $data['data']; $pdo = null; $pdo = null; ;}





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

www.bkjia.com

tru​​e

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

技術記事

ほとんどの人はデータベースへのパスを保存して写真をアップロードしますが、挿入するときは非常に高速で、Web の特性に準拠していますが、削除するときはファイルを見つけて削除する必要があり、非常に面倒です...



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