کد کامل آپلود عکس در دیتابیس
با سلام
اینم کد مورد نظر
کد DB
create table mune1
(id int(10)primary key auto_increment,
title char(255) not null,
time char(255) not null,
memo text not null,
pic blob,
name char(255) not null,
mark char(100) not null);
کدinsert
<form action="regnews.php" method="post" enctype="multipart/form-data">
<table cellspacing="0" cellpadding="0" width="98%" height="100%">
<tr>
<td align="center">
<table border='0' width='85%' align='center'>
<tr>
<td align='center' bgcolor='#D5D5D5' width='21%' height='22'>
<input type='text' name='title' size='35' style='font-family: Tahoma; font-size: 8pt; color: #800000; text-align: center'></td>
<td width='10%' align='center' bgcolor='#D3DCE3' height='22'>
<span style='font-size: 8pt'>ÚäæÇä ÎÈÑ</span></td>
</tr>
<tr>
<td align='center' bgcolor='#D5D5D5' width='21%'>
<span lang='en-us'><font color='#800000'>$jdate</font></span></td>
<td width='10%' align='center' bgcolor='#D3DCE3'>
<span style='font-size: 8pt'>ÊÇÑیÎ ÎÈÑ</span></td>
</tr>
<tr>
<td align='center' bgcolor='#D5D5D5' width='21%'>
<script language='JavaScript' type='text/javascript' src='wysiwyg.js'>
</script>
<textarea id='textarea1' name='memo' style='height: 201; width: 361;' >
</textarea>
<script language='javascript1.2'>
generate_wysiwyg('textarea1');
</script>
</td>
<td width='10%' align='center' bgcolor='#D3DCE3'>
<span style='font-size: 8pt'>ãÊä ÎÈÑ</span></td>
</tr>
<tr>
<td align='center' bgcolor='#D5D5D5' width='21%'>
<input type='hidden' name='MAX_FILE_SIZE' value='2000000'>
<input type='file' name='pic' size='44' style='font-family: Tahoma; font-size: 8pt; color: #800000; text-align: center; border: 1px solid #800000' dir='ltr'></td>
<td width='10%' align='center' bgcolor='#D3DCE3'>
ÊÕæیÑ ãæÑÏ äÙÑ1<span lang='en-us'>33</span>*1<span lang='en-us'>76</span></td>
</tr>
<tr>
<td align='center' bgcolor='#D5D5D5' width='21%'>
<input type='submit' value='ËÈÊ ÇØáÇÚÇÊ' name='B1' style='font-family: Tahoma; font-size: 8pt; color: #000080; text-align: center'></td>
<td width='10%' align='center' bgcolor='#D3DCE3'>
<input type='reset' value='ÏæÈÇÑå äæیÓی' name='B2' style='font-family: Tahoma; font-size: 8pt; color: #000080; text-align: center'></td>
</tr>
</table>
<p> </p>
<p> </p>
<?php
error_reporting(~E_ALL);
$B1=$_POST['B1'];
$name=LOGINMASSAGE;
$title=$_POST['title'];
$time=$jdate;
$memo=$_POST['memo'];
$pic=$_FILES['pic']['tmp_name'];
$picsize=$_FILES['pic']['size'];
$x='new';
if($B1=='ËÈÊ ÇØáÇÚÇÊ')
{
if($title=='')
{
echo "<font color='#FF0000'>áØÝÇ ÈÑÇی ÇÏÇãå ÚäæÇä ÎÈÑ ÑÇ ËÈÊ äãÇییÏ</font><p>";
}
else
if ($memo=='')
{
echo"<font color='#FF0000'>áØÝÇ ÈÑÇی ÇÏÇãå ˜ÇÑ ãÊä ÎÈÑ ÑÇ æÇÑÏ äãÇییÏ</font><p>";
}
else
{
if($picsize>'350000')
{
echo $pic."حجم فایل ارسال شده بالا می باشد 350</span>kb<span lang='fa'>
می باشد لطفا حجم را کاهش دهید";
}
if($pic=="")
{
$val="''";
}
else
{
if(is_uploaded_file($pic))
{
$fp=fopen($pic,'rb');
$val = fread($fp,filesize($pic));
$val = '0x' . bin2hex($val);
}
}
$sql = mysql_query("INSERT INTO mune6 (title,time,memo,name,pic,mark) VALUES ( '".$title."','".$time."','".$memo."','".$name."',".$val.",'".$x."') " ) ;
}
if($sql)
{
echo"<font color='#FF0000'>ÇÎÈÇÑ ãæÑÏ äÙÑ ÈÇ ãæÝÞیÊ ËÈÊ ÔÏ</font><p>";
}
else
{
echo"<font color='#FF0000'>ÚãáیÇÊ ËÈÊ Èå ÏÑÓÊی ÇäÌÇã äÔÏ</font><p>";
}
}
?>
کد نمایش :
echo "<img src='show.php?table=mune1 & id=$row3[0] & rowsdo=4' width='176' higth='133'>";
کد نمایش فایل show.php:
<?php
header('Content-Type: image/jpeg');
//db connect
$idrow=addslashes($_GET[id]);
$tablerow=$_GET
;
$markdo=$_GET[markdo];
$rowsdo=$_GET[rowsdo];
class showpic
{
function show($table,$id,$mark,$rows)
{
if($mark)
{
$q="select * from $table where mark='$mark' and id='$id' ";
}
else
{
$q="select * from $table where id='$id'";
}
$r=mysql_query($q);
$row=mysql_fetch_array($r);
echo $row[$rows];
}
}
$sql=new showpic();
$sql->show($tablerow,$idrow,$markdo,$rowsdo);
?>
فقط یک مشکل داره زمانی که نمایش می ده روی آن کلیک راست کنید و مسیر آن را ببنید مسیر دیتابیس رو هم نمایش می ده و این از نظر امنیتی خوب نیست