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 > ใครเก่ง php มาช่วยด้วยครับ โค้ด php อัพรูปเข้าฐานข้อมูล my sql แล้วขึ้น error



 

ใครเก่ง php มาช่วยด้วยครับ โค้ด php อัพรูปเข้าฐานข้อมูล my sql แล้วขึ้น error

 



Topic : 086938

Guest




ช่วยด้วยครับ โค้ดphp อัพรูปแล้วขึ้น
Fatal error: Class 'upload' not found in I:\xampp\htdocs\aaa\imageProfile\upload.php on line 24

โค้ด php ตัวอัพ
Code (PHP)
<?php
mb_http_input("utf-8");
mb_http_output("utf-8");
?>
<?php
// Include คลาส class.upload.php เข้ามา เพื่อจัดการรูปภาพ
require_once('class-up-img.php') ;
 
// ส่วนกำหนดการเชื่อมต่อฐานข้อมูล
$hostname_connection = "localhost";
$database_connection = "a";
$username_connection = "root";
$password_connection = "a";
$connection = mysql_pconnect($hostname_connection, $username_connection, $password_connection)
		or trigger_error(mysql_error(),E_USER_ERROR); 
mysql_query( "SET NAMES UTF8" ) ;
 
 
//  ถ้าหากหน้านี้ถูกเรียก เพราะการ submit form  
//  ประโยคนี้จะเป็นจริงกรณีเดียวก็ด้วยการ submit form 
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
 
    // เริ่มต้นใช้งาน class.upload.php ด้วยการสร้าง instant จากคลาส
    $upload_image = new upload($_FILES['image_name']) ; // $_FILES['image_name'] ชื่อของช่องที่ให้เลือกไฟล์เพื่ออัปโหลด
 
    //  ถ้าหากมีภาพถูกอัปโหลดมาจริง
    if ( $upload_image->uploaded ) {
 
        // ย่อขนาดภาพให้เล็กลงหน่อย  โดยยึดขนาดภาพตามความกว้าง  ความสูงให้คำณวนอัตโนมัติ
        // ถ้าหากไม่ต้องการย่อขนาดภาพ ก็ลบ 3 บรรทัดด้านล่างทิ้งไปได้เลย
        $upload_image->image_resize         = true ; // อนุญาติให้ย่อภาพได้
        $upload_image->image_x              = 400 ; // กำหนดความกว้างภาพเท่ากับ 400 pixel 
        $upload_image->image_ratio_y        = true; // ให้คำณวนความสูงอัตโนมัติ
 
        $upload_image->process( "image_profile" ); // เก็บภาพไว้ในโฟลเดอร์ที่ต้องการ  *** โฟลเดอร์ต้องมี permission 0777
 
        // ถ้าหากว่าการจัดเก็บรูปภาพไม่มีปัญหา  เก็บชื่อภาพไว้ในตัวแปร เพื่อเอาไปเก็บในฐานข้อมูลต่อไป
        if ( $upload_image->processed ) {
 
            $image_name =  $upload_image->file_dst_name ; // ชื่อไฟล์หลังกระบวนการเก็บ จะอยู่ที่ file_dst_name
            $upload_image->clean(); // คืนค่าหน่วยความจำ
 
            // เก็บชื่อภาพลงฐานข้อมูล
			 $id = mysql_real_escape_string($_POST['image_id']);
            $insertSQL = sprintf("INSERT INTO image_profile (image_name) VALUES ( '%s', '$id')", $image_name );
            echo $insertSQL ;
            mysql_select_db($database_connection, $connection);
            $Result1 = mysql_query($insertSQL, $connection) or die(mysql_error());
 
 
        }// END if ( $upload_image->processed )
 
    }//END if ( $upload_image->uploaded )
 
 
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<p>&nbsp;</p>
<p><form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
  <p>Image_name 
    <input name="image_name" type="file" id="image_name" size="40" />
  </p>
  <p>
    <input name="id" type="hidden" id="id" value="<?php echo $_SESSION['login_user']; ?>" />
  </p>
  <p>
    <input type="submit" value="Upload" />
    <input type="hidden" name="MM_insert" value="form1" />
  </p>
</form></p>
</body>
</html>


โค้ดไฟล์ class-up-img.php
Code (PHP)
<?php 
class UpImage{		
		public $file;
		private $name;
		private $size;
		private $type;
		private $dri;
		
		private $SISE = 1048576;
		private $TYPE = array('png','jpg','gif');
		private  $NAME = "'/^[a-z\d]{4,30}$/i";
		
		public function __construct($file,$dri,$zise){
			//set value
			$this->dri = $dri;
			$this->file = $file;
			$this->SISE = $zise;
			$this->size = $file["size"];
			
			// separate name and type 
			$Arr = explode(".",$file["name"]);			
			$this->name = $Arr[0];
			$this->type = $Arr[1];
		}
		
		//Add type
		public function addType($type){
				array_push($this->TYPE,$type) ;
		}
		
		//Check accuracy of image file.
		public function check(){
				if($this->checkSize()&&$this->checkType()&&$this->checkError())
					 return true;
				else 
					return false;
		}
		
		//Chack Size of image file.
		public function checkSize(){
				if($this->SISE < $this->size||0 > $this->size) return false;
				else return true;
		}
		
		//Check Type of image file.
		public function checkType(){
				$b = false;
				$count = count($this->TYPE);
				while($count>0){
						if($this->TYPE[$count-1]==$this->type){$b = true;
						}
					$count--;
				}
				return true;
		}
		
		//Check error of image file
		public function checkError(){
				if($file["error"]==0){
					return true;
				}
				else{
					return false;
				}
		
		}
		
		//Chack name of image file
		public function checkName(){
				
				//will add "001" in end of name image file
				if(!file_exists($this->dri.$this->name."00001.".$this->type)){
					//set name of image 
					$this->NAME = $this->name."00001.".$this->type;
				}
				else{
						$b=true; $i=1;
						while($b){
							$num = $this->name.(str_pad(($i++),5,"0",STR_PAD_LEFT));
							if(!file_exists($this->dri.$num.".".$this->type)){
								//set name of image 
								$this->NAME = $num.".".$this->type;
										
								// out loop
								$b=false;
							}
						}				
				}				
		}
		
		//Upload image
		public function upImage(){
				if($this->check()){
					$this->checkName();
					$move = move_uploaded_file($this->file["tmp_name"],$this->dri.$this->NAME);
					
					//Up image completed.
					if($move)
						$b = true;
					//image is error!		
					else $b = false;	
				}
				else {
						// Image is error!
						$b = false;
				}
				
				return $b;
		}
		
		public function getName(){
				return $this->NAME;
		}
		
		public function getType(){
				return $this->type;
		}
		
		public function getSize(){
				return $this->size;
		}
		
}
?>

ในตารางมีฟิลด์ image_id กับ image_name ลองโค้ดในxampp1.8 ครับ



Tag : PHP, MySQL, Windows







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-11-19 20:43:42 By : tontan1998 View : 1468 Reply : 9
 

 

No. 1



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



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


มันหา Class ไม่เจอครับ เพราะว่า class-up-img.php ไม่มี Class ชื่อ upload ที่ได้ประกาศ อ๊อฟเจ็ค จาก ไฟล์แรกไปครับ
ดูๆ แล้วเหมือนไฟล์ 1 กับ ไฟล์ที่ 2 มันไม่มีส่วนไหน จะโยงกันได้เลย








ประวัติการแก้ไข
2012-11-20 01:39:52
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-20 01:32:46 By : execution123
 


 

No. 2

Guest


ตอบความคิดเห็นที่ : 1 เขียนโดย : execution123 เมื่อวันที่ 2012-11-20 01:32:46
รายละเอียดของการตอบ ::
ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-20 19:46:38 By : tontan1998
 

 

No. 3

Guest


เป็นอีกแล้วครับ ตอนนี้ขึ้น

Code
Notice: Undefined index: image_id in I:\xampp\htdocs\aaa\member\imageProfile\upload.php on line 44
INSERT INTO image_profile (image_name) VALUES ( '3.png', '')Column count doesn't match value count at row 1


โค้ดตามข้างบน
แต่โค้ดไฟล์ class-up-img.php มาจากไฟล์class.upload.php ปล.เปลี่ยนชื่อไฟล์ ของเว็บhttp://www.verot.net/php_class_upload.htmhttp://www.verot.net/php_class_upload.htm
ช่วยด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-20 20:18:57 By : tontan1998
 


 

No. 4

Guest


โค้ดฐานข้อมูล
Code (SQL)
-- phpMyAdmin SQL Dump
-- version 3.5.2
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Nov 20, 2012 at 02:14 PM
-- Server version: 5.5.25a
-- PHP Version: 5.4.4

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `aaa`
--

-- --------------------------------------------------------

--
-- Table structure for table `image_profile`
--

CREATE TABLE IF NOT EXISTS `image_profile` (
  `image_id` varchar(20) NOT NULL,
  `image_name` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;


ช่วยด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-20 20:22:56 By : tontan1998
 


 

No. 5



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



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


INSERT INTO image_profile (image_name) VALUES ( '3.png', '') ตรงนี้ผิดครับ เพราะจำนวนฟิลดิ์กับ value จำนวนไม่ตรงกัน

คุณกำลังจะ insert ลงไปในฟิลดิ์ image_name อันเดียว แต่คุณใส่ value ลงไป 2 ตัว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-21 08:56:33 By : Songkram
 


 

No. 6

Guest


แล้วต้องแก้ยังไร ครับ :blank
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-21 12:33:17 By : tontan1998
 


 

No. 7



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



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


ก็ต้องทำให้จำนวนฟิลดิ์ กับ VALUE มันเท่ากันครับ .... ถ้าจำนวนฟิลดิ์ 1 ก็ต้องมี VALUE 1 ค่า
ถ้าจำนวนฟิลดิ์ 2 VALUE ก็ต้อง 2 ค่า
ถ้าจำนวนฟิลดิ์ 3 VALUE ก็ต้อง 3 ค่า

INSERT INTO image_profile (field1, field2, field3, .....) VALUES (value1, value2, value3, .....)


ประวัติการแก้ไข
2012-11-21 15:11:26
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-21 15:09:59 By : Songkram
 


 

No. 8

Guest


ตอบความคิดเห็นที่ : 7 เขียนโดย : Songkram เมื่อวันที่ 2012-11-21 15:09:59
รายละเอียดของการตอบ ::
ขอบคุณครับ แต่จะแก้ยังไร ผมจะลองทำระบบอัปโหลดรูปขึ้นฐานข้อมูล แต่จะแก้โค้ดนี้ยังไง ช่วยด้วยครับ เทพphp แห่ง thaicreate

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-21 19:09:36 By : tontan1998
 


 

No. 9

Guest


Code (PHP)
		$id = $_SESSION['id'];
			 //$id = mysql_real_escape_string($_POST['id']);
            $insertSQL = sprintf("INSERT INTO image_profile (image_id,image_name) VALUES ( '$id','%s' )", $image_name);
            echo $insertSQL ;

ขอบคุณครับ ทำได้แล้ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-22 20:50:30 By : tontan1998
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ใครเก่ง php มาช่วยด้วยครับ โค้ด php อัพรูปเข้าฐานข้อมูล my sql แล้วขึ้น error
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่