Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > ใครเคย upload รูปภาพ ลง database mssql (SQL Server Images BLOB) แล้ว ดึงมาแสดง บ้างครับ



 

ใครเคย upload รูปภาพ ลง database mssql (SQL Server Images BLOB) แล้ว ดึงมาแสดง บ้างครับ

 



Topic : 059850



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์




ใครเคย upload เข้า database mssql แล้ว ดึงมาแสดง บ้างครับ

รบกวนด้วยครับ



Tag : PHP, Ms SQL Server 2005









ประวัติการแก้ไข
2011-05-07 21:58:41
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-05-07 19:55:47 By : tingtongkub View : 21641 Reply : 45
 

 

No. 1



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


รบกวนด้วยครับ








ประวัติการแก้ไข
2011-05-07 20:26:05
2011-05-07 20:26:09
2011-05-07 20:26:13
2011-05-07 20:27:05
2011-05-07 21:59:15
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-07 20:24:37 By : tingtongkub
 


 

No. 2



โพสกระทู้ ( 599 )
บทความ ( 0 )



สถานะออฟไลน์
Twitter Facebook

ขอถามว่าทำไมคุณถึงต้องเอาภาพยัดเข้าไปใน DB ครับ ?

ทำไมไม่ upload ตัวไฟล์ไปอยู่บน server แล้วทำการเก็บ path ของรูปหรืออะไรก็ได้ที่จะทำการเรียกไฟล์ภาพนั้นขึ้นมาครับ ?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-07 22:21:21 By : oxygenyoyo
 

 

No. 3



โพสกระทู้ ( 3,748 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Facebook

ไม่เคยลองครับ แต่เขาบอกว่าบวมๆก็เลยกลัวๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-07 23:03:41 By : Dragons_first
 


 

No. 4



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


คือตอนนี้ผมรับงานมา ซึ่ง ระบบที่เขาออกแบบมาเขาเก็บไว้ใน DB ครับ
ซึ่งจะเป็น พวก VB แลัวเขาให้ผมทำ ระบบสำหรับรายงานผ่านเว็บ
ผมเลยต้อง หาวิธีที่จะดึงข้อมูล จาก mssql มาแสดงครับ เพราะว่าตอนนี้ ตัวอย่างที่เขาไห้มาไม่มี รูปใน DB
เลยต้องลองเขียนโค้ดอับโหดเองก่อน แล้ว จะลองดูว่า ดีงมาแสดงได้หรือไม่ครับ


รบกวนด้วยครับ ตอนนี้ยังหาวิธีไม่เจอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-08 09:34:24 By : tingtongkub
 


 

No. 5



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


read ไฟล์ tmp มาเก็บไว้ในตัวแปร แล้ว insert ปกติครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-08 11:29:18 By : PlaKriM
 


 

No. 6



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


มีตัวอย่งโค้ด upload แล้วก็ แสดงใหม่ครับ ที่เจอส่วนใหญ่เป็น Mysql ทั้งนั้นเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-08 11:48:17 By : tingtongkub
 


 

No. 7



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


มันไม่ต่างกันหรอกครับ แค่คุณต้อง escape string มันหน่อย เอาของ mysql มาปรับใช้ได้เลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-08 11:54:25 By : PlaKriM
 


 

No. 8



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


รบกวนช่วยดูหน่อยครับ

มัน error

ว่า
Fatal error: Call to undefined function mssql_escape_string() in D:\AppServ\www\pp\insert_img.php on line 18


Code (PHP)
<?
if(isset($_FILES["userfile"]["size"]) && $_FILES["userfile"]["size"] != 0){
    $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("TONG-NC\SQLEXPRESS","sa","");
    @mssql_select_db("my_datal", $link);
	$escaped_item = mssql_escape_string($data);
    $res = @mssql_query("INSERT INTO images(name,data,type) VALUES('".$file_name."','".$escaped_item."','".$file_type."')", $link);
    @mssql_close($link);
}
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-08 13:26:32 By : tingtongkub
 


 

No. 9



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ยังไม่ได้เลยครับ รบกวนด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 08:30:14 By : tingtongkub
 


 

No. 10



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

มันก็ไม่ต่างอะไรกับ mysql น่ะครับ ลองเปลี่ยนแค่ชื่อ function ครับ

Go to : PHP Upload Image (BLOB Binary Data in a MySQL Database)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 08:47:34 By : webmaster
 


 

No. 11



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ตอนนี้ยังไม่ได้เลยครับ ลองทำตามตัวอย่างหมดแล้วครับ แถม มันยังไม่ลงฐานข้อมูลเลยครับ


Code (PHP)
<?
	if($_FILES["filUpload"]["name"] != "")
	{
		
		//*** Read file BINARY ***'
		$fp = fopen($_FILES["filUpload"]["tmp_name"],"r");
		$ReadBinary = fread($fp,filesize($_FILES["filUpload"]["tmp_name"]));
		fclose($fp);
		$FileData = addslashes($ReadBinary);

		//*** Insert Record ***//
		$objConnect = mssql_connect("TONG-NC\SQLEXPRESS","sa","") or die("Error Connect to Database");
		$objDB = mssql_select_db("mis_data");
		$strSQL = "INSERT INTO files ";
		$strSQL .="(Name,FilesName) VALUES ('".$_POST["txtName"]."','".$FileData."')";
		$objQuery = mssql_query($strSQL);		

		echo "Copy/Upload Complete<br>";

	}
?>
<a href="PageUploadToMySQL3.php">View files</a>


ผมไม่ทราบว่าที่ต้องใส่ escape string ตรงใหนครับ



error ตามนี้เลยครับ

Warning: mssql_query() [function.mssql-query]: message: Incorrect syntax near '?'. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with ';xß¿²Èz;£+Œ’:CšY$.vwI\'Õª–šö\'Tˆ±–±íSá^Åoæ è@!±D,\0·¢”‚¢ÃÁ:`’€8ŸªáÄýT³„SHå<÷{”ƒ8PÄ/­Ðͪn±8£*Åö€¹ö›*ð®õ^5–æ›9Rü–' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with '5£ÃòO’vÿ\0ÉŠóˆ»4³»™{Ý‚æºM1ü,læò}—™t½ù±ßécG­ÏÕ|oÓÚ³>9ŒHMÄsEDß’µÎýnN=†ÑŠž–ô~2 lU/ÄI¾Ï¤c¿<mPIÖVb²^áø¥m •Íoò«oìäÒ:G<ã_²á2' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with 'j½Ž?÷õ oêG°+?«¼‚ü¯1ö¶¼“–93Un¶\\Õ!º;>‰ŒRsÖÞ¨°×ÇÖ2&–d9XÂö‡¸ýç)´ª’6Ú§ìþ>ˆ€M*Ï…ô¾`×;ìð1Ùr¸ž°¸}Í›öi\07¨ª©šÛ¶0Øù›w#5„ðXU8' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with 'TK›Ùlãvüíoh(šŠ=_¬!Ñœ’2FZF?¼×·v ? ±¼7wßuWmKI±ÑJ¿¢²ÆÜñ»8ô>ZØú­B)Zö‡0‡0ê׍C—žyb3ÓÕêÛ4N͑dz÷J¼axŒuì¸píÆîÛJ8 ®>Jw3^ Á F-C²u^' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with '(!1?‚áo1²yö~EñeÔì’ x)¹rAG1_Qºá§#}HðIO0M W„|Êta¶¦À{Þ é=- w[#{ÖçÝNÖ\0ƒSW ;3Êàyþ_ÉJ² Î6\0f$颢ôëÚtù©èìùm•ÒîÈÿ\0ÜåÒž”ËYÂç' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Add a name or single space as the alias name. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with '”Z¬¶\0[`~œê>?ÔÕbœø øü·\0Ъu\\Qíö…®Ž’ hæÓŸñ5g™r›kÅoº¯´.\'–JFêH|Ò\0{9¿*Îz>rÔDI°ë2ŸªÊ•Ö¨¿xú.“”ºr$+À7ÿ\0TVõH€\\ÜlvF' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with '}ŒMš®®ü¾Ï{}å°Ÿô öüÕU¦ä’i÷ù¥[t‚Ú^ç™ HüÓä½\'£§6÷ÿ\0ää’åë/ú%åñU–åÂT°ÛØ¢Çõ(œ‚ é¾)m ¡¶Ý,2ÿ\00‰\\cn»–Éa¾ ¶N ‡oÓûMŽ' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with 'NÞ ¢Q£ñ*µí-Ö£mô½K,~ r³Æ>¾Šíf\\´°³T½¤´‰L V^$@§‚¡õŽÑÖpôJÍ{\\ê|@©&à;.ú÷›Äœ‡zoÄ\0Fʸ0ôêw|ºÛoŠ —Ðß[%Úî|­·Å.šó8G o–Kåk#k' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with '™ò»w=;‘àêt°ÓÁfI1‡%ËVW>c®ƒ’cÒ|PÃÓ’OW”_ÜXe5CžW_4¯¨s¾ìËRö¢óýSc`XÛŸ¾Õ–À@†Ú*—½×¦¦Tí,ž~7k|·>öJëmÏDòškð›|Tl‚úßè‰Ný@ð梽Mì¸N¥' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with '»\'Ù¦`-s¡Ù0¨i¶v܃Úoõ&Ë_ „3LŽø÷SœÂ7 kmñZB`çXè·„ŒÎÝBù¤4¹ñê`EÀd¯×ÒYV‘rŠ­c¸qÀqßRÂ~̬Q›¥ô¶Úªr¼Ù–à>K*²*§¸í8ùƒdRË' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: The identifier that starts with ',SÆþ‡ÿ\0‘÷JüÒÂñæðÅQx¦Ï÷rœ½¦¿fÝi~Ìý¢Wô~W>‘í’šCÿ\0A;ÜiæÜR3+¿áæ÷Û¿5Ó×R²¹¢zss¥Ç?Ýr”“º‘ÝLÂÆ‹é?Ú2kPÀ<kbm¾ë–+#阮[þU?Óßk˜~=KOOj)' is too long. Maximum length is 128. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: message: Unclosed quotation mark after the character string ')'. (severity 15) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21

Warning: mssql_query() [function.mssql-query]: Query failed in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 21
Copy/Upload Complete
View files


ประวัติการแก้ไข
2011-05-09 11:38:04
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 11:36:28 By : tingtongkub
 


 

No. 12



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

กำหนด Type ของ Column เป็นอะไรครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 11:40:06 By : webmaster
 


 

No. 13



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองดู type ของ sql server มันมีเป็นแบบ image ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 11:40:53 By : webmaster
 


 

No. 14



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


เซท เป็น image แล้ว ครับ

ตอนนี้ยังไม่ได้เลยครับ ติดหน้า ที่ 2 ครับ


ประวัติการแก้ไข
2011-05-09 11:54:55
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 11:49:01 By : tingtongkub
 


 

No. 15



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


ลองใส่ base64_encode() แล้วลองดูครับ
ถ้าจำไม่ผิดที่เคยลอง ผมก็ใช้แบบนี้ แต่งานจริงๆ ผมไม่เคยเก็บภาพไว้ใน DB
Code (PHP)
<?php
	if($_FILES["filUpload"]["name"] != "")
	{
		
		//*** Read file BINARY ***'
		$fp = fopen($_FILES["filUpload"]["tmp_name"],"r");
		$ReadBinary = base64_encode(fread($fp,filesize($_FILES["filUpload"]["tmp_name"])));
		fclose($fp);
		$FileData = addslashes($ReadBinary);

		//*** Insert Record ***//
		$objConnect = mssql_connect("TONG-NC\SQLEXPRESS","sa","") or die("Error Connect to Database");
		$objDB = mssql_select_db("mis_data");
		$strSQL = "INSERT INTO files ";
		$strSQL .="(Name,FilesName) VALUES ('".$_POST["txtName"]."','".$FileData."')";
		$objQuery = mssql_query($strSQL);		

		echo "Copy/Upload Complete<br>";

	}
?>
<a href="PageUploadToMySQL3.php">View files</a>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 13:29:47 By : naskw
 


 

No. 16



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ลอง ก็อป ไปวางแล้วขึ้นแบบนี้ครับ


Warning: mssql_query() [function.mssql-query]: message: Operand type clash: text is incompatible with image (severity 16) in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 16

Warning: mssql_query() [function.mssql-query]: Query failed in D:\AppServ\www\pp\PageUploadToMySQL2.php on line 16
Copy/Upload Complete
View files


ไม่ทราบว่า มันคืออะไรครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 13:42:31 By : tingtongkub
 


 

No. 17



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


น่าจะเป็นที่ datatype image ใน mssql อะครับ ผมไม่รู้ว่ามันต้องใช้เก็บข้อมูลแบบไหน เป็น byte หรือว่าเป็นไร
ไม่รู้ว่า fread ขึ้นมาแล้วใส่ลงไปเลยได้หรือเปล่า หรือว่าต้องผ่านฟังก์ชั่นอื่นๆ หรือไม่
คุณลองเปลี่ยนเป็นพวก Bob หรืออะไรที่มันคล้าย BOB ใน mysql ได้หรือเปล่า
base64_encode มันจะรีเทิร์นออกมาเป็นสตริง ถ้าเป็น BOB ใน mysql ได้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 14:05:05 By : naskw
 


 

No. 18



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


คือ database ผมไปแตะไม่ได้ครับ เจ้าของระบบเขาไห้ผมเขียน web ไว้ แสดงรายงาน ของเขาเฉยๆ ตอนแรกแนะนำเขาไห้เก็บไปไว้ใน folder แล้วเก็บ พาท แทน เขาว่ามันยุ่งยาก ก็เลยต้องหาวิธี ที่จะดึงภาพครับ

ที่หลักๆ คือ จะลองแค่เอ่รูปมาแสดงเฉยๆครับ แต่ตอนนี้ ใน db ไม่มีข้อมูลรูป เลยต้องหาวิธีอับก่อนครับ จะได้ เอารูปมาแสดงให้ได้

แต่ ตอนนี้จนปัญญาครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 14:21:11 By : tingtongkub
 


 

No. 19



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


แล้วฟิวด์ที่ระบบเค้าใช้เก็บข้อมูลอยู่ตอนนี้เค้าใช้ datatype เป็นอะไรครับ จะได้แนะนำถูก
PM มาละกันเพราะผมไม่ได้เข้ามาดูบอร์ดตลอดเวลา


ประวัติการแก้ไข
2011-05-09 15:18:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 15:14:43 By : naskw
 


 

No. 20



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


เป็น datatype เป็น image ครับ
ปกติเขาใช้ vb.net พัฒนาครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-09 22:55:06 By : tingtongkub
 


 

No. 21



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ถึงตอนนี้็ก็ยัง upload ไม่ได้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-10 19:39:50 By : tingtongkub
 


 

No. 22



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


ผมว่าให้เค้าอัพ(คนที่เขียนVB)ให้ดีว่ามะ เค้าคงจะเขียนโค้ดไว้แล้ว จะได้ไม่เสียเวลาไปมากกว่านี้ เพราะงานของคุณแค่ดึงข้อมูลไม่ใช่หรอครับ ไม่ได้เกี่ยวกับอัพโหลด แต่ช่วงที่รอก็ศึกษาโค้ดการดึง Image จาก Mssql ในเน็ตไปพลางก่อน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 09:39:06 By : naskw
 


 

No. 23



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองทำแล้วครับ ยากนิดหนึ่งครับ ยังไม่เสร็จ แต่เอา code มาให้ดูเป็นตัวอย่างหน่อยครับ

สำหรับ Type ให้เลือกเป็น varBinary(MAX)

เรียกใช้ function OPENROWSET ของ SQL Server ในการ Insert Binary Data

Syntax
INSERT INTO files
(Name, FilesName)
SELECT 'win',
BulkColumn FROM OPENROWSET(
Bulk 'D:\AppServ\www\myphp\win.jpg', SINGLE_BLOB) AS BLOB


แปลงเป็น php ก็จะได้

Code (PHP)
<html>
<head>
<title>ThaiCreate.Com Tutorial</title>
</head>
<body>
<?
	if($_FILES["filUpload"]["name"] != "")
	{
		

		//*** Insert Record ***//
		$objConnect = mssql_connect("localhost","sa","") or die("Error Connect to Database");
		$objDB = mssql_select_db("mydatabase");

		$strSQL = "INSERT INTO files ";
		$strSQL .="	( Name, FilesName) ";
		$strSQL .="	SELECT '".$_POST["txtName"]."',  ";
		$strSQL .="		BulkColumn FROM OPENROWSET( ";
		$strSQL .="			Bulk '".$_FILES["filUpload"]["tmp_name"]."', SINGLE_BLOB) AS BLOB ";

		$objQuery = mssql_query($strSQL);		

		echo "Copy/Upload Complete<br>";

	}
?>
<a href="PageUploadToSQLServer3.php">View files</a>
</body>
</html>


อันนี้สำหรับแสดงข้อมูล

Code (ViewImage.php)
<?
	header('Content-Type: image/jpeg');
	$objConnect = mssql_connect("localhost","sa","") or die("Error Connect to Database");
	$objDB = mssql_select_db("mydatabase");
	$strSQL = "SELECT hex(FilesName) FROM files WHERE FilesID = '".$_GET["FilesID"]."' ";
	$objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]");
	$objResult = mssql_fetch_assoc($objQuery);

	echo $objResult["FilesName"];
?>


ถ้ามันยากจริง ๆ ก็เก็บเฉพาะชื่อไฟล์ที่ดีที่สุดครับ เล่นกับ Binary Data ยากนิดหนึ่ง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 10:39:15 By : webmaster
 


 

No. 24



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ขอบคุณมากๆเลยครับ

เรื่องเปลี่ยน typedata ผม ยุ่งไม่ได้เลยครับ (อันนี้ผมเคยคุยเจ้าของแล้วเขาว่าเขาจะใช้อันนี้ครับ ไม่กล้าไปแย้งเขาเด๋วไม่จบครับ)

ที่ต้องทำ upload เพราะว่า ที่คุยกับ เจ้าของเขาบอกว่า มันจะมาในไม่ช้า คือ ว่า อนาคตอันไกล้นี้ ต้องใช้ครับ

ตอนนี้ ดึงรูปภาพแสดงได้แล้วครับ แต่ไม่รู้ว่าต้นฉบับที่มีใน database มันเป็นยังไง เพราะว่า ดึงมาแล้ว ภาพไม่ค่อยสมบูรณ์ ขาดบ้าง หายบ้างครับ

เลยอยากลองอับเองก่อนว่า สรุปว่าถ้าอับแล้ว เรียกมาเปิด แล้ว สมบูรณ์แปลว่าเป็นที่ภาพ ถ้า ไม่ นี้เรื่องยาวครับ


ประวัติการแก้ไข
2011-05-11 13:32:53
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 13:29:41 By : tingtongkub
 


 

No. 25



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองดูน่ะครับ ถ้าหาได้ก่อนก็บอกด้วยนะครับ แต่ก็จะช่วยหาด้วยเช่นเดียวกันครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 13:56:14 By : webmaster
 


 

No. 26



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ตอนนี้ยังไม่เจอครับ ลองหา ที่เป็น ภาษาอังกฤษ แล้ว โค้ดเขาจะเหมือนที่เราใช้อยู่ครับ

ที่สำคัญผม ภาษาอังกฤษผมไม่แข็งแรง เลยไม่ค่อยรู้เรื่องครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 13:58:22 By : tingtongkub
 


 

No. 27



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าเป็นภาษาอังกฤษผมก็เจอเหมือนกันโค้ดประมาณนี้ แต่ของผมลองทำอัพเดตนะ
ตัวนี้มันเข้าฐานข้อมูลครับ แต่ผมดึงออกมาไม่อะ
Code (PHP)
	$datacontent  = file_get_contents("about.jpg");
	$data = unpack("H*hex", $datacontent);
	mssql_query("UPDATE tb1 SET img='".$data['hex']."' WHERE id='2' ")or die(mysql_error());


ส่วนการดึงเค้าคิวรี่ธรรมดาแล้วก็ echo ออกมาไม่ได้ผ่านฟังก์ชันไรด้วยซ้ำ แต่ว่าก็ไม่มีภาพประกอบนะครับ


ประวัติการแก้ไข
2011-05-11 14:12:29
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 14:11:49 By : naskw
 


 

No. 28



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


เด๋วลองก่อนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 16:20:13 By : tingtongkub
 


 

No. 29



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้า upload ได้และดึงมาแสดงได้ก็บอกด้วยละกัน ผมยังดึงมาแสดงไม่ได้เหมือนกัน จะพยายามลองช่วยละกัน
ทำไม่ได้มันรู้สึกคาใจยังไงไม่รู้ เด๋วต่อไปถ้าได้ใช้จะไม่ต้องเสียเวลามางมใหม่ อิๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 16:55:20 By : naskw
 


 

No. 30



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ยังทำไม่ได้เหมือนกันครับ 555+
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 17:15:56 By : webmaster
 


 

No. 31



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


แต่เท่าที่เข้าไปอ่านในเว็บ microsoft รู้สึกว่าอีกไม่นานเค้าจะยกเลิก image แล้วนะครับ ใน sql server เวอร์ชันต่อไป
เดี๋ยววันหลังเอาลิ้งมาโพสนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 17:29:01 By : naskw
 


 

No. 32



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ทำวิธีแรกได้ แต่ภาพกลับแสดงไม่สมบูรณ์ซะงั้น
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 17:34:44 By : webmaster
 


 

No. 33



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ขอบคุณมากๆเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-11 20:35:54 By : tingtongkub
 


 

No. 34



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ได้แล้วครับ มั่วจนได้เลยครับ

ผมจะไปเขียนเป็น บทความได้ไหมครับ มี 4 หน้าเหมือนกันครับ
ลองเข้าไปเขียนมัน ให้ใส่ url ตลอดเลยครับ ทั้งที่กรอกไปแล้ว


ทำยังไงดีครับ


ประวัติการแก้ไข
2011-05-12 01:10:45
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 00:57:34 By : tingtongkub
 


 

No. 35



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

โพสมาในนี้ก็ได้เลยครับ เดียวว่าง ๆ จะจัดการเขียนบทความเองครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 06:17:25 By : webmaster
 


 

No. 36



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


เขียนไว้แล้วครับ

เป็นเพราะเขียน url ยาวไป เลยตั้งสั้นๆดู ok แล้วครับ

Go to : PHP SQL Server BLOB การ Upload และ Insert รูปภาพลงใน SQL Server mssql (BLOB,Image DataType)

พี่ วิน อ่านแล้ว ถ้า มีปัญหาตรงไหนแก้เลยครับ


ประวัติการแก้ไข
2011-05-12 07:15:36
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 07:15:02 By : tingtongkub
 


 

No. 37



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

เยี่ยมมาก ๆ ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 08:38:51 By : webmaster
 


 

No. 38



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ขอบคุณท่านท่าน ที่ช่วยผมดูมาตั้งหลายวันนะครับ

ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 09:08:55 By : tingtongkub
 


 

No. 39



โพสกระทู้ ( 768 )
บทความ ( 0 )



สถานะออฟไลน์


เดี๋ยวจะลองดู ขอบคุณที่แบ่งปันครับ เก็บไว้ก่อนเผื่อได้ใช้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 11:56:17 By : naskw
 


 

No. 40



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองอัพโหลดรูปใหญ่ (มากกว่า 40K) กลับมีปัญหาครับ หรือว่ามันปกติ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 11:56:58 By : webmaster
 


 

No. 41



โพสกระทู้ ( 532 )
บทความ ( 1 )



สถานะออฟไลน์


ขอโทษทีครับ ลืมบอกไปครับ

ต้องไปปรับใน php.ini ครับ

ตามนี้ครับ

[head] php.ini head]
; Valid range 0 - 2147483647.  Default = 4096.
mssql.textlimit = 2147483647

; Valid range 0 - 2147483647.  Default = 4096.
mssql.textsize = 2147483647


ปกติเป็น 4096 เราเปลี่ยนตามที่เรากำหนดได้เลยครับ

ผมเลยเปลี่ยนเป็น 2147483647 เต็มที่เลยครับ

ถ้าน้อยมันได้แค่ นิดเดียวครับ เคยลอง แค่ 100k ลองอับรุป 200k มันขึ้นแค่ครึ่งเดียวครับ


ประวัติการแก้ไข
2011-05-12 13:13:24
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-12 13:08:22 By : tingtongkub
 


 

No. 42



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ตอบความคิดเห็นที่ : 41 เขียนโดย : tingtongkub เมื่อวันที่ 2011-05-12 13:08:22
รายละเอียดของการตอบ ::
... ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-16 06:46:55 By : webmaster
 


 

No. 43



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองดูแล้วใช้อันนี้ก็ได้เหมือนกันครับ

สำหรับ Type ให้เลือกเป็น varBinary(MAX)

เรียกใช้ function OPENROWSET ของ SQL Server ในการ Insert Binary Data

Syntax
INSERT INTO files
(Name, FilesName)
SELECT 'win',
BulkColumn FROM OPENROWSET(
Bulk 'D:\AppServ\www\myphp\win.jpg', SINGLE_BLOB) AS BLOB


แปลงเป็น php ก็จะได้

Code (PHP)
<html>
<head>
<title>ThaiCreate.Com Tutorial</title>
</head>
<body>
<?
	if($_FILES["filUpload"]["name"] != "")
	{
		

		//*** Insert Record ***//
		$objConnect = mssql_connect("localhost","sa","") or die("Error Connect to Database");
		$objDB = mssql_select_db("mydatabase");

		$strSQL = "INSERT INTO files ";
		$strSQL .="	( Name, FilesName) ";
		$strSQL .="	SELECT '".$_POST["txtName"]."',  ";
		$strSQL .="		BulkColumn FROM OPENROWSET( ";
		$strSQL .="			Bulk '".$_FILES["filUpload"]["tmp_name"]."', SINGLE_BLOB) AS BLOB ";

		$objQuery = mssql_query($strSQL);		

		echo "Copy/Upload Complete<br>";

	}
?>
<a href="PageUploadToSQLServer3.php">View files</a>
</body>
</html>


อันนี้สำหรับแสดงข้อมูล

Code (ViewImage.php)
<?
	header('Content-Type: image/jpeg');
	$objConnect = mssql_connect("localhost","sa","") or die("Error Connect to Database");
	$objDB = mssql_select_db("mydatabase");
	$strSQL = "SELECT hex(FilesName) FROM files WHERE FilesID = '".$_GET["FilesID"]."' ";
	$objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]");
	$objResult = mssql_fetch_assoc($objQuery);

	echo $objResult["FilesName"];
?>


ถ้ามันยากจริง ๆ ก็เก็บเฉพาะชื่อไฟล์ที่ดีที่สุดครับ เล่นกับ Binary Data ยากนิดหนึ่ง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-16 10:24:45 By : webmaster
 


 

No. 44



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

อีก 1 บทความครับ

Go to : PHP Upload File BLOB/Image to SQL Server Database (mssql-OPENROWSET)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-05-16 11:21:36 By : webmaster
 


 

No. 45

Guest


ขอถามอะไรหน่อยนะครับ ตรง mysql อะครับ

Code
USE [mydatabase]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[files](
[FilesID] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](100) NULL,
[FilesName] [image] NULL,
[FilesType] [varchar](20) NULL,
CONSTRAINT [PK_files] PRIMARY KEY CLUSTERED
(
[FilesID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
SET ANSI_PADDING OFF


แล้วมันขึ้น error ว่า

Code
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[mydatabase] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDI' at line 1


ต้องทำยังไงหรอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-25 13:55:15 By : Nut
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ใครเคย upload รูปภาพ ลง database mssql (SQL Server Images BLOB) แล้ว ดึงมาแสดง บ้างครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่