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,037

HOME > PHP > PHP Forum > ถามเรื่องการ uploadรูปคับ ผมใส่ไฟล์ไป มักจะมีเงื่อนไขว่า ต้องเปน jpg ขนาดไม่เกิดเท่านี้ ตลอดทั้งๆที่ทำตามเงื่อนไขแล้วก็ยังไม่ผ่าน งง



 

ถามเรื่องการ uploadรูปคับ ผมใส่ไฟล์ไป มักจะมีเงื่อนไขว่า ต้องเปน jpg ขนาดไม่เกิดเท่านี้ ตลอดทั้งๆที่ทำตามเงื่อนไขแล้วก็ยังไม่ผ่าน งง

 



Topic : 065763



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



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




ไม่ว่าจาทำตามเงื่อนไขอย่างไร ก็ขึ้น ..ต้องเป็นภาพชนิด .jpg หรือ .png หรือ .gif เท่านั้น (บรรทัดที่ 34)


upload_img.php
Code (PHP)
<?php
session_start();
if(!isset($_SESSION['user_id']) || !isset($_SESSION['user_name'])) {
	 header("Location: user_login.php");
	 exit;
}
$user_id = $_SESSION['user_id'];
$user_name = $_SESSION['user_name'];
?>
<!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=windows-874" />
<title>Blog: Upload Image</title>
<link rel="stylesheet" href="../css/style.css"  />
</head>
<body>
<?php
include("header.inc.html");
include("blog.inc.php");
my_connect();
?>



<center><p />
<h3 align="center">อัปโหลดภาพสำหรับสร้างบล็อกใหม่</h3>
<?php
//ถ้าเป็นการอัปโหลดไฟล์ขึ้นมา ให้จัดเก็บลงในฐานข้อมูลก่อน
if($_FILES) {
	$errmsg = "";
	$type = strtolower($_FILES['file']['type']);
	$pattern = "((jpe?g)|(png)|(gif))$";
	if(eregi("$pattern", $type)) {		
 		$errmsg .= "ต้องเป็นภาพชนิด .jpg หรือ .png หรือ .gif เท่านั้น <br />";
 	}
	
	$size = getImageSize($_FILES['file']['tmp_name']);
	if($size[0] > 300) {
		$errmsg .= "ขนาดของภาพต้องไม่เกิน 300 พิกเซล <br />";
	}
	
	if($_FILES['file']['error'] != 0) { 
		$errmsg .= "เกิดข้อผิดพลาดในการอัปโหลดภาพ <br />";
	 }
	
	if($errmsg != "") {
		echo "<font color=red>$errmsg</font><p />";
		echo "<a href=\"javascript: history.back()\">ย้อนกลับไปแก้ไข</a>";
		exit;
	}

	$name = $_FILES['file']['name'];
	$type = $_FILES['file']['type'];
	$size = $_FILES['file']['size'];
		
	//อ่านเนื้อหาของไฟล์
	$upfile = $_FILES['file']['tmp_name'];
	$file = fopen($upfile, "r");
	$content = fread($file, filesize($upfile));
	$content = addslashes($content);
	fclose($file);
		
 	$sql = "INSERT INTO img VALUES
 				(0, $user_id, '$name', '$type', '$size', '$content');";
	@mysql_query($sql) or die(mysql_error());

	echo "การบันทึกไฟลภาพ์เสร็จเรียบร้อย <br />";
}
?>
<p />
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
  ไฟล์ที่จะอัปโหลดต้อง...<br />
  - เป็นภาพชนิด .jpg หรือ .png หรือ .gif <br />
  - มีขนาดความกว้างไม่เกิน 300 พิกเซล<br />
<br /> 
  <input name="file" type="file" id="file" size="50" />
	 <br />
	 <input name="Submit" type="submit" value="อัปโหลด" />
	 <br />
  <br />
  <a href="new_entry.php">กลับไปที่หน้าสร้างบล็อกใหม่</a>
</form>
<hr width="680"  />
<?php
$sql = "SELECT img_id, user_id FROM img 
 			WHERE user_id = $user_id ORDER BY img_id DESC;";
$result = mysql_query($sql);
if(mysql_num_rows($result) > 0) {
	echo "ภาพที่อัปโหลดขึ้นไปแล้วโดย: $user_name <p />";
	while($data = mysql_fetch_array($result)) {
		$img_id = $data['img_id'];
		echo "<img src=read_img.php?imgid=$img_id /> <p />";
	}
}
?>
</center><p>&nbsp;</p>
</body>
</html>


read_img.php
Code (PHP)
<?php
include("blog.inc.php");
my_connect();

$img_id = $_GET['imgid'];

$sql = "SELECT type, content FROM img WHERE img_id = $img_id;";
$result = mysql_query($sql);

$type = mysql_result($result, 0, "type");
$content = mysql_result($result, 0, "content");

header("Content-type: $type");
echo $content;
?>




Tag : PHP, Ms Access, MySQL









ประวัติการแก้ไข
2011-09-01 17:46:00
2011-09-01 17:46:29
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-09-01 17:35:58 By : yag00za View : 978 Reply : 2
 

 

No. 1



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

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

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

คำสั่งชุดนี้ $_FILES['file']['type'] <= มันไม่ได้ออกมาเป็นนามสกุลของรูปที่สามารถนำไปเช็คได้นะครับ

มันจะออกมาประมาณว่า

image/gif

image/png


ต้อง Split เอาสามนามสกุลจริงๆของมันออกมาครับ


บางคนอาจจะตั้งชื่อ picture.01.jpg ต้องหาวิะีเอา หลัง . สุดท้ายมา






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-01 18:00:10 By : adaaugusta
 


 

No. 2



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



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


ผมใส่ /*if(eregi("$pattern", $type)) {
$errmsg .= "ต้องเป็นภาพชนิด .jpg หรือ .png หรือ .gif เท่านั้น <br />";
}*/
ก็ใช้ได้แล้วครับ
แต่แปัญหาที่เกิดดันไม่จบคับ ออกมาเป็น http://localhost/phpmydream/project26/read_img.php?imgid=4
ซึ่งลิงค์ที่ออกมานี้ เหมือนจาเป็นลิงค์เสียคับ ไปยังภาพไม่ได้ รบกวนชี้แนะทีคับ จาส่งโปรเจคแล้ว ขอบคุณคับ

บรรทัดที่ 96 คับ
Code (PHP)
<?php
session_start();
if(!isset($_SESSION['user_id']) || !isset($_SESSION['user_name'])) {
	 header("Location: user_login.php");
	 exit;
}
$user_id = $_SESSION['user_id'];
$user_name = $_SESSION['user_name'];

include("blog.inc.php");
my_connect();

if($_POST) {
	if(get_magic_quotes_gpc()) {
	 	foreach($_POST as $k => $v) {
			$_POST[$k] = stripslashes($v);
		}
	}
	
	$cat_id = $_POST['cat'];
	$title = htmlspecialchars($_POST['title'], ENT_QUOTES);
	$content = $_POST['content'];
	$sql = "INSERT INTO entry VALUES
				(0, '$cat_id', $user_id, NOW(), '$title', '$content', '$user_name', 0);";
				
	@mysql_query($sql) or die(mysql_error());
	
	header("Refresh: 3; url=index.php");
	echo "บล็อกของท่านถูกจัดเก็บแล้ว และจะไปยังหน้าหลักใน 3 วินาที";
	exit;
}
?>
<!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=windows-874" />
<title>Blog: New Entry</title>
<link rel="stylesheet" href="../css/style.css"  />
<script src="../openwysiwyg/wysiwyg.js"> </script>
</head>
<body>
<?php
include("header.inc.html");
?>
<p />
<h3 align="center">สร้างบล็อกใหม่</h3>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form1" id="form1">
  <table border="0" cellspacing="3" cellpadding="0" align="center">
    <tr>
      <td>หมวด:</td>
      <td>
        <select name="cat" id="cat">
		<?php
		foreach($BLOG_CATS as $key => $value) {
			echo "<option value=$key>$value</option>";
		}
		?>
        </select>
      </td>
    </tr>
    <tr>
      <td>หัวข้อ:</td>
      <td><label>
        <input name="title" id="title" type="text" size="60" />
      </label></td>
    </tr>
    <tr>
      <td>รายละเอียด:</td>
      <td>
        <textarea name="content" id="content"> </textarea>
	  	<script> generate_wysiwyg('content'); </script>	 
	  </td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td align="right">[<a href="upload_img.php">อัปโหลดรูปภาพ</a>]  [<a href=#>วิธีการแทรกรูปภาพใน Editor</a>]</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><label>
        <input type="submit" name="Submit1" value="สร้างบล็อกใหม่" />
		 <input type="button" name="Button1" value="ตัวอย่างผลลัพธ์" onclick="alert('ส่วนนี้ให้ทำเพิ่มเติมเอง'); return false;" />
      </label></td>
    </tr>
  </table>
</form><hr align="center" /><center>
<?php
$sql = "SELECT img_id, user_id FROM img 
 			WHERE user_id = $user_id ORDER BY img_id DESC;";
			
$result = mysql_query($sql);
if(mysql_num_rows($result) > 0) {
	echo "ภาพที่อัปโหลดขึ้นไปแล้วโดย: $user_name <p />";
	while($data = mysql_fetch_array($result)) {
		$img_id = $data['img_id'];
		$url = "http://localhost/phpmydream/project26/";
		$url .= "read_img.php?imgid=" . $img_id;
		echo "<img src=$url /><br />
				URL:<input type=text size=80 value=$url /><p />";
	}
}
?>
</center><p>&nbsp;</p>
</body>
</html>



ประวัติการแก้ไข
2011-09-01 18:27:30
2011-09-01 18:28:20
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-01 18:25:50 By : yag00za
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ถามเรื่องการ uploadรูปคับ ผมใส่ไฟล์ไป มักจะมีเงื่อนไขว่า ต้องเปน jpg ขนาดไม่เกิดเท่านี้ ตลอดทั้งๆที่ทำตามเงื่อนไขแล้วก็ยังไม่ผ่าน งง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 03
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 อัตราราคา คลิกที่นี่