fatnomore

Thu 1 Sep 2005 10:27:48
Thu 1 Sep 2005 10:27:48
รบกวนผู้รู้
เขียน ตัวอย่าง Code Upload file ลง data base MS SQL Server 2000
และวิธีอ่าน file กลับออกมาด้วยครับ
เขียน ตัวอย่าง Code Upload file ลง data base MS SQL Server 2000
และวิธีอ่าน file กลับออกมาด้วยครับ
ขอยกตัวอย่างจากการอัพโหลดรูปเข้าสู่เซิร์ฟเวอร์นะครับเพราะหลักการเดียวกัน
จากตัวอย่างนี้ โครงสร้างของ ตารางดังนี้
images (
id int(5) auto_increment,
name varchar(50),
data image,
type varchar(20)
);
<?
if(isset($_FILES["userfile"]["size"]) && $_FILES["userfile"]["size"] != 0){
//มีการ post file เข้ามา
$fp = fopen($_FILES["userfile"]["tmp_name"], "rb");
$file_name = $_FILES["userfile"]["name"];
$file_type = $_FILES["userfile"]["type"];
$data = "";
if(!get_magic_quotes_gpc()){
$data = addslashes(fread($fp,filesize($_FILES["userfile"]["tmp_name"])));
}else{
$data = fread($fp,filesize($_FILES["userfile"]["tmp_name"]));
}
fclose($fp);
unlink($_FILES["userfile"]["tmp_name"]);
$link = @mssql_connect("host","uid","pass");
@mssql_select_db("db_name", $link);
$res = @mssql_query("INSERT INTO images(name,data,type) VALUES('".$file_name."','".$data."','".$file_type."')", $link);
@mssql_close($link);
}
?>
ส่วนการอ่านไฟล์ออกมาก็เหมือนกันครับ
$link = @mssql_connect("host","uid","pass");
@mssql_select_db("db_name", $link);
$res = @mssql_query("SELECT * FROM images WHERE id=".(int)$_GET["id"], $link);
if(@mssql_num_rows($res) > 0){
//Found
$row = @mssql_fetch_array($res, MSSQL_ASSOC);
}else{
//Not found
}
@mssql_free_result($res);
@mssql_close($link);
if(isset($row["name"]) && isset($row["data"]) && isset($row["type"])){
header("Content-type: ".$row["type"]);
print($row["data"]);
}
ประมาณนี้ครับ
จากตัวอย่างนี้ โครงสร้างของ ตารางดังนี้
images (
id int(5) auto_increment,
name varchar(50),
data image,
type varchar(20)
);
<?
if(isset($_FILES["userfile"]["size"]) && $_FILES["userfile"]["size"] != 0){
//มีการ post file เข้ามา
$fp = fopen($_FILES["userfile"]["tmp_name"], "rb");
$file_name = $_FILES["userfile"]["name"];
$file_type = $_FILES["userfile"]["type"];
$data = "";
if(!get_magic_quotes_gpc()){
$data = addslashes(fread($fp,filesize($_FILES["userfile"]["tmp_name"])));
}else{
$data = fread($fp,filesize($_FILES["userfile"]["tmp_name"]));
}
fclose($fp);
unlink($_FILES["userfile"]["tmp_name"]);
$link = @mssql_connect("host","uid","pass");
@mssql_select_db("db_name", $link);
$res = @mssql_query("INSERT INTO images(name,data,type) VALUES('".$file_name."','".$data."','".$file_type."')", $link);
@mssql_close($link);
}
?>
ส่วนการอ่านไฟล์ออกมาก็เหมือนกันครับ
$link = @mssql_connect("host","uid","pass");
@mssql_select_db("db_name", $link);
$res = @mssql_query("SELECT * FROM images WHERE id=".(int)$_GET["id"], $link);
if(@mssql_num_rows($res) > 0){
//Found
$row = @mssql_fetch_array($res, MSSQL_ASSOC);
}else{
//Not found
}
@mssql_free_result($res);
@mssql_close($link);
if(isset($row["name"]) && isset($row["data"]) && isset($row["type"])){
header("Content-type: ".$row["type"]);
print($row["data"]);
}
ประมาณนี้ครับ
fatnomore

Fri 2 Sep 2005 16:12:59
Fri 2 Sep 2005 16:12:59
ขอบคุณครับ

















