Long Live The King
ข้าพเจ้าไม่ได้มีพรสวรรค์พิเศษอะไร ข้าพเจ้าเพียงแต่มีความกระหายใคร่รู้อยู่เสมอ ทุ่มเทให้กับสิ่งที่อยากรู้ พากเพียรอย่างทรหด และสำรวจวิจารณ์ความรู้ของตัวเองเป็นประจำ ปัจจัยเหล่านี้คือที่มาของแนวคิดต่างๆ ของข้าพเจ้า .... อัลเบิร์ต ไอน์สไตน์

วันศุกร์ที่ 21 ธันวาคม พ.ศ. 2555

วิธีการ upload รูป + SQL + Resize + Show image from SQL



บทความนี้เป็นการนำเอา Code จากบทความ "UPDATE วิธีการ upload ไฟล์ขึ้น webserver ด้วย PHP + Resize" มาปรับปรุงเพิ่มเติมใน ส่วนของการบันทึก ที่อยู่ของไฟล์รูปลงฐานข้อมูล พร้อมทั้งวิธีการดึงขึ้นมาแสดงหน้าเว็บไซต์....

จากบทความก่อนเรานำมาปรับปรุงเพิ่มเติม code สำหรับการบันทึกลงฐานข้อมูล ดังนี้
if($imageupload != ""){ //ถ้าตัวแปรไฟล์ไม่เท่ากับค่าว่าง
$sql = "insert into images (image) values ('$showpic')";
mysql_query($sql);

เสร็จแล้วในส่วนของการบันทึกลงฐานข้อมูล
ต่อไปเป็นส่วนของการนำมาแสดง ดังนี้

<div id="showpic">
        <ul>
            <?php
            $sql = "select * from images order by id_image";
            $result = mysql_query($sql);
            $num_rows = mysql_num_rows($result);
            $i=0;
            while($i<$num_rows){
                $row = mysql_fetch_array($result);
                $image = $row['image'];

                echo "<li style='height:60px;'>";
                echo "<a href='$image'>";
                echo "<img src='$image'/>";
                echo "</a>";
                echo "</li>";

                $i++;
            }
            mysql_close();
            ?>
        </ul>
    </div>

เสร็จแล้วในส่วนของการนำข้อมูลจากฐานข้อมูลขึ้นมาแสดง

Code ที่เสร็จแล้ว
ไฟล์ upload_resize_sql.php

<?php
include 'config.php';
$imageupload = $_FILES['imageupload']['tmp_name'];
$imageupload_name = $_FILES['imageupload']['name'];
$path = "uploads";
$newwidth=90;

if(isset($_POST['submit'])){
if($imageupload){
$arraypic = explode(".",$imageupload_name);
$filename = strtolower($arraypic[0]); //แปลงเป็นตัวพิมพ์เล็ก
$filetype = strtolower($arraypic[1]);
if($filetype=="jpg" || $filetype=="jpeg" || $filetype=="png"
|| $filetype=="gif"){

if($filetype=="jpg" || $filetype=="jpeg"){
$src = imagecreatefromjpeg($imageupload);
}
else if($filetype=="png"){
$src = imagecreatefrompng($imageupload);
}
else if($filetype=="gif"){
$src = imagecreatefromgif($imageupload);
}

list($width,$height)=getimagesize($imageupload);
$newheight=($height/$width)*$newwidth;
$tmp=imagecreatetruecolor($newwidth,$newheight);
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);

if($filetype=="jpg" || $filetype=="jpeg"){
imagejpeg($tmp,$path."/".$filename.".".$filetype);
}
else if($filetype=="png"){
imagepng($tmp,$path."/".$filename.".".$filetype);
}
else{
imagegif($tmp,$path."/".$filename.".".$filetype);
}

}else {
echo "<div><center><h3>ERROR : ไม่สามารถ Upload รูปภาพได้</h3></center></div>";
}
}
$showpic = $path."/".$filename.".".$filetype;
if($imageupload != ""){
$sql = "insert into images (image) values ('$showpic')";
mysql_query($sql);
}
}

?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<style>
body{background: #eeeeee;margin:0 auto;}
#form_upload{margin:0px auto;}
#showimage{margin:100px auto 20px auto;}
#showpic li{float: left;list-style: none;
margin-left:10px;margin-top:10px;padding: 10px;}
</style>
</head>
<body>
<center><div id="showimage">
<?php
if($_POST[submit]){
if($imageupload != ""){
echo "<a href='$showpic'><img width=90 src='$showpic'></img></a>";
}
}
?>
</div></center>

<div id="form_upload">
<form method="post" enctype="multipart/form-data">
<center> Image: <input name="imageupload" type="file" size="35"/><br/>
<input type="submit" name="submit" value="Upload"/></center>
</form>
</div>

<div id="showpic">
<ul>
<?php
$sql = "select * from images order by id_image";
$result = mysql_query($sql);
$num_rows = mysql_num_rows($result);
$i=0;
while($i<$num_rows){
$row = mysql_fetch_array($result);
$image = $row['image'];

echo "<li style='height:60px;'>";
echo "<a href='$image'>";
echo "<img src='$image'/>";
echo "</a>";
echo "</li>";

$i++;
}
mysql_close();
?>
</ul>
</div>
</body>
</html>


0 ความคิดเห็น:

แสดงความคิดเห็น

© Bookneo, AllRightsReserved.

ขับเคลื่อนโดย Blogger Designed by Nikhorn Thongchuay