PDA

View Full Version : سوال: این کد چرا عکس را در خروجی چاپ نمیکند؟



abdollah110110
دوشنبه 18 بهمن 1389, 01:53 صبح
سلام

<?php session_start();
$onvan1=trim($_POST['onvan']);
echo("$onvan1");

include_once('../sql/MysqlConnect.php');
include_once('../sql/select_db.php');

$sql="SELECT * FROM home WHERE onvan='$onvan1'";
$result=mysql_query($sql,$con);
if(!$result)
{
echo('رکورد وجود ندارد');
break;
}

$num=mysql_num_rows($result);

for($i=0;$i<$num;$i++)
{
$row=mysql_fetch_assoc($result);
}

extract($row,EXTR_OVERWRITE,"_1");//نام کليدها را به يک متغير تبديل ميکند وبه متغير تکراري پسوند اضافه ميکند
//$onvan,$matlab,$kholase,$picture,$type_pic,$size_p ic,$date_pic
echo('<br><div align="center"><img src='.'"$picture"'.' border="1" alt='."$picture".' /></div>');

?>

متشکرم

rezarss
دوشنبه 18 بهمن 1389, 03:08 صبح
شما کد html رو به عنوان کد php در نظر گرفتید که باید اون رو به کد php تبدیل کنید.
در اسکریپتت به جای اون قسمت کد زیر رو قرار بده ببین درست میشه.


echo "<br><div align=\"center\"><img src='.'\"\$picture\"'.' border=\"1\" alt='.\"\$picture\".' /></div>";

abdollah110110
دوشنبه 18 بهمن 1389, 03:35 صبح
شما کد html رو به عنوان کد php در نظر گرفتید که باید اون رو به کد php تبدیل کنید.
دقیقا منظورتون چی بود؟
کدی که دادید رو جایگزین کردم ولی چیزی فرق نکرد، البته کدی که من نوشته بودم هم، همین کارو میکرد
متشکرم از شما

دوستان هرکی در مورد چاپ عکس در صفحه چیزی میدونه بگه، لطفا

رضا قربانی
دوشنبه 18 بهمن 1389, 09:05 صبح
سلام

<?php session_start();
$onvan1=trim($_POST['onvan']);
echo("$onvan1");

include_once('../sql/MysqlConnect.php');
include_once('../sql/select_db.php');

$sql="SELECT * FROM home WHERE onvan='$onvan1'";
$result=mysql_query($sql,$con);
if(!$result)
{
echo('رکورد وجود ندارد');
break;
}

$num=mysql_num_rows($result);

for($i=0;$i<$num;$i++)
{
$row=mysql_fetch_assoc($result);
}

extract($row,EXTR_OVERWRITE,"_1");//نام کليدها را به يک متغير تبديل ميکند وبه متغير تکراري پسوند اضافه ميکند
//$onvan,$matlab,$kholase,$picture,$type_pic,$size_p ic,$date_pic
echo('<br><div align="center"><img src='.'"$picture"'.' border="1" alt='."$picture".' /></div>');

?>
متشکرم



سلام دوست من

برای قسمت آخری که اکو می کنی باید به این گونه عکستون رو قرار بدید

برای اینکه راحت تر متوجه بشید برای مثال من یه پوشه upload درست کردم که عکس ها از به اونجا آپلود می شن و ما می خواییم دریافتشون کنیم





////////نمایش آدرس عکس از بانک و خود عکس در پوشه upload
<img src=" ./upload/'.$row["pic"].' " style="float:left; " width="200px" height="200px"/>

///////// ویا این کد که مربوط به برنامه نویسی شما می شه

echo('<br><div align="center"><img src=" '.$picture.' " border="1" alt=" '.$picture.' " /></div>');




همیشه یادت باشه که برای اینکه عکس بخوایی دریافت کنی همیشه براش یه شرط تعریف کن که من به این صورت شرط می گذارم و کدهاش رو براتون همون طوری کپی کردم تا خودتون جزییات رو متوجه بشید




if(file_exists("./upload/".$row["pic"]) and !is_dir("./upload/".$row["pic"]))

{
$pic='<img src=" ./upload/'.$row["pic"].' " title="'.$row["name"].'" style="float:left; " width="200px" height="200px" style=" border-width:2px; border-color:#000000; "/><br />
';




}
else
{
$pic="";
}


موفق باشید دوست من

MMSHFE
دوشنبه 18 بهمن 1389, 09:06 صبح
با سلام، اين كد رو امتحان كنيد:


<?php session_start();
$onvan1=trim($_POST['onvan']);
echo($onvan1);
include_once('../sql/MysqlConnect.php');
include_once('../sql/select_db.php');
$sql="SELECT * FROM home WHERE onvan='$onvan1'";
$result=mysql_query($sql,$con);
if(!$result)
{
die('رکورد وجود ندارد');
}
while($row=mysql_fetch_assoc($result))
{
$row=mysql_fetch_assoc($result);
extract($row,EXTR_OVERWRITE,"_1");
//نام کليدها را به يک متغير تبديل ميکند وبه متغير تکراري پسوند اضافه ميکند
//$onvan,$matlab,$kholase,$picture,$type_pic,$size_p ic,$date_pic
echo('<br/><div align="center"><img src="'.$picture.'" border="1" alt="'.$picture.'"/></div>');
}
?>

اميدوارم كه درست شده باشه. البته اين به شرطي هست كه مسير دقيق در فيلد picture ذخيره شده باشه و اگه فقط نام فايل تصوير ذخيره شده، بايد آدرس پوشه تصاوير رو هم ذكر كنيد (مثلاً "'.src="images/'.$picture بنويسيد).
موفق و مؤيد باشيد.

$ M 3 H R D A D $
دوشنبه 18 بهمن 1389, 09:55 صبح
فکر کنم اول و آخر کدت دستوراتhtml وbody و باز وبسته کنی اینجور تگ های تصویر ومیشناسه

sattaryekta
دوشنبه 18 بهمن 1389, 12:21 عصر
$picture

را بین " قرار بده نه '
اگر بین گ قرار می دی از . استفاده کن! :گیج:

abdollah110110
سه شنبه 19 بهمن 1389, 02:21 صبح
دوستان لطفا بگویید :
1) قضیه پوشه های image,upload دقیقا چیه؟

من عکس رو در همون لحظه آپلود در فیلد picture ذخیره کرده ام. حالا میخوام مستقیما از جدول بخونمش و به نمایش بدم، بدون استفاده از هیچ پوشه ذخیره سازی دیگری. من دقیقا خود عکس رو در جدول ذخیره کرده ام و خود عکس رو هم میخوام بخونم.
2) چطور خود عکس رو مستقیما چاپ کنم؟
متشکرم

mohsen6500
سه شنبه 19 بهمن 1389, 02:51 صبح
سلام اینو نیگا
(http://hockinson.com/index.php?s=37)ببین بدردت میخوره

رضا قربانی
سه شنبه 19 بهمن 1389, 18:23 عصر
دوستان لطفا بگویید :
1) قضیه پوشه های image,upload دقیقا چیه؟

من عکس رو در همون لحظه آپلود در فیلد picture ذخیره کرده ام. حالا میخوام مستقیما از جدول بخونمش و به نمایش بدم، بدون استفاده از هیچ پوشه ذخیره سازی دیگری. من دقیقا خود عکس رو در جدول ذخیره کرده ام و خود عکس رو هم میخوام بخونم.
2) چطور خود عکس رو مستقیما چاپ کنم؟
متشکرم


دوست من شما عکس رو داخل بانک ذخیره نمی کنید بلکه آدرس عکس رو ذخیره می کنید - این رو دقت داشته باش

abdollah110110
چهارشنبه 20 بهمن 1389, 04:07 صبح
من خود عکس رو در بانک ذخیره می کنم

رضا قربانی
چهارشنبه 20 بهمن 1389, 12:28 عصر
دوست من گفتم که شما فقط می تونید آدرس عکس رو ذخیره کنید


من می گم نره شما می گید بدوش :لبخند:

امکان پذیر نیست که خود عکس رو در بانک mysql ذخیره کنید

abdollah110110
پنج شنبه 21 بهمن 1389, 03:47 صبح
نر نیست قبلا دوشیده شده:قهقهه:
این کد رو ببین:

<?php session_start();

ob_start();

if (!(is_uploaded_file($_FILES['pic_file']['tmp_name']))) {
$_SESSION['text']="عکس آپلود نشده است، لطفا دوباره ارسال کنيد";
header('location:../omumi_files/payam.php');
break;
}

$name_pic=$_FILES['pic_file']['name'];
$tmp=$_FILES['pic_file']['tmp_name'];

list($width, $height, $type, $size)=getimagesize($tmp);

switch($type)
{
case '1':
$type_pic='image/gif';
break;
case '2':
$type_pic='image/jpeg';
break;
case '3':
$type_pic='image/png';
break;
case '6':
$type_pic='image/vnd.wap.wbmp';
break;
}

if(($width>320 || $height>320))
{
$_SESSION['text']="اندازه طول و عرض عکس بايد 320 * 240 يا 240 * 320 پيکسل باشد";
header('location:../omumi_files/payam.php');
break;
}

if($size>103500)
{
$_SESSION['text']="حجم عکس بايد 102 کيلوبايت باشد";
header('location:../omumi_files/payam.php');
break;
}

if($type_pic=='image/jpeg')
{
$pic_to_mysql = addslashes(fread(fopen($tmp, "r"), filesize($tmp)));

include_once('../sql/MysqlConnect.php');

$sql="INSERT INTO home_images (picture,name_pic,type_pic)".
"VALUES ('$pic_to_mysql','$name_pic','$type_pic')";

$result=mysql_query($sql,$con);
if(!$result)
{
$_SESSION['text']="عکس آپلود نشد، لطفا دوباره ارسال کنيد";
header('location:../omumi_files/payam.php');
break;
}

mysql_close($con);
}
else
{
$_SESSION['text']="نوع عکس بايد"." jpg"."باشد ";
header('location:../omumi_files/payam.php');
break;
}

ob_end_flush();

?>

رضا قربانی
پنج شنبه 21 بهمن 1389, 09:07 صبح
عزیز من . دوست من . من که بهت دروغ نمی گم - دارم کمکت می کنم تا بهتر یاد بگیری

ببین شما خود فایل عکس رو می فرستی به پوشه دلخواه و اگه بخوایی اون عکس رو از بانک بخونی میایی اسم عکس رو در بانکت ذخیره می کنی و از طرف دیگه دریافتش می کنی ( دیگه خود عکس امکانش نیست که در بانک ذخیره بشه )

من توی پست 4 همین تاپیک براتون کامل توضیح دادم

حالا نمی دونم شاید من اشتباه دارم بهتون توضیح می دم اگر کسی دیگه ای هست که بدونه ممنون می شم که اینجا پست بزنه


موفق باشید دوست من

abdollah110110
پنج شنبه 21 بهمن 1389, 17:14 عصر
روشی که شما میگید رو قبول دارم
میدونی ایراد روش شما چیه
ایرادش اینه که اگه از بانک اطلاعاتی backup بگیری خود عکس ها در فایل bachup ذخیره نمیشن،
بلکه فقط آدرس پوشه و نام عکس ذخیره میشه و فایل واقعی عکس میپره.

متشکرم از شما

رضا قربانی
جمعه 22 بهمن 1389, 14:53 عصر
روشی که شما میگید رو قبول دارم
میدونی ایراد روش شما چیه
ایرادش اینه که اگه از بانک اطلاعاتی backup بگیری خود عکس ها در فایل bachup ذخیره نمیشن،
بلکه فقط آدرس پوشه و نام عکس ذخیره میشه و فایل واقعی عکس میپره.

متشکرم از شما


شما خود فایل عکس رو در بانک ذخیره می کنید ؟ :متفکر:

abdollah110110
شنبه 23 بهمن 1389, 01:06 صبح
بله دقیقا همین کارو میکنم
روش خوبیه یا شما روش خودتون رو ترجیح میدین؟

MMSHFE
شنبه 23 بهمن 1389, 07:15 صبح
با سلام، به نظر من روشي كه دوستمون جناب galiken_it (http://barnamenevis.org/member.php?151175-galiken_it) گفتن بهتره چون حجم ديتابيس رو پايين نگه ميداره. براي پشتيبان گيري هم ميتونيد علاوه بر اطلاعات موجود در DB، محتويات پوشه تصاوير رو هم ذخيره كنيد. بايد موقع طراحي بيشتر به فكر سرعت كار سايت و رضايت مشتري باشيم تا راحتي كار خودمون. همونطور كه ميدونيد، از اونجا كه كد موجود در DB بايد موقع نمايش دوباره خونده بشه و يا در فايل ذخيره بشه و يا توسط GD در صفحه درج بشه، سرعت كار پايين مياد و زحمت خودتون هم براي نوشتن كد سايت زياد ميشه. حالا هر جور دوست داريد! :چشمک:
موفق و مؤيد باشيد.

niloufari
دوشنبه 05 اردیبهشت 1390, 11:02 صبح
man taze shoru be yadgirie php kardam lotfan dar morede namayeshe ax dar khoruji vasam ye code nemune bezarid

niloufari
دوشنبه 05 اردیبهشت 1390, 11:08 صبح
moshkele in code man baraye namayeshe ax chie?hata hajmesho ham tu bankam neshun mide vali khode ax vasam nemiad<?php
$d="";
if( $_FILES['myupload']['name']!="" )
{

echo $_FILES['myupload']['type'] .'</br>';
echo $_FILES['myupload']['size'] .'</br>';
echo $_FILES['myupload']['name'] .'</br>';
echo $_FILES['myupload']['tmp_name'] .'</br>';
if(file_exists("C:/m/".$_FILES['myupload']['name']))
{
$sts=copy($_FILES['myupload']['tmp_name'],"C:/m/".$_FILES['myupload']['name']);
if($sts)
{

echo ' file:'.$_FILES['myupload']['name'].' has been uploaded';
$d="C:/m/".$_FILES['myupload']['name'];
echo $d;

}
}
else
{
echo ' file:'.$_FILES['myupload']['name'].' exists';
}

$host='localhost';
$user='root';
$pass='';
$con = mysql_connect($host,$user,$pass);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("person",$con);
$sql="INSERT INTO Person1 (name, family, date,image)
VALUES
('".$_POST['name']."','".$_POST['family']."','".$_POST['date']."','".$d."')";
echo $sql;
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";
$query="select name,family,date,image from person1";
$temp=mysql_query($query);
echo $result;
echo '<table border="1" align="center" >';
echo '<tr >
<td>name</td>
<td>family</td>
<td>date</td>
<td>image</td>
</tr>';
while($temp_array =mysql_fetch_array($temp))
{
echo '<br><br>';
print_r($temp_array);
echo $temp_array ['image'];

//move_uploaded_file($HTTP_POST_FILES['edit.gif']['tmp_name'],"m/".$x);
echo '<tr>

<td>'.$temp_array ['name'].'</td>
<td>'.$temp_array ['family'].'</td>
<td>'.$temp_array ['date'].'</td>
<td><img src="'.$temp_array ['image'].'" ></td>
</tr>';
}

echo '</table>';
}
?>
<html>
<head>
<title> project1 </title>
</head>

<body>
<form action="new.php" method="POST" enctype="multipart/form-data" >
name: <input type="text" name="name"/><br />
family: <input type="text" name="family"/><br />
date: <input type="text" name="date"/><br />
image:<input type="file" name="myupload"></br>
<input type="submit" value="upload">
</form>
</body>
</html>
lotfan komakam konid

sara333
دوشنبه 05 اردیبهشت 1390, 14:22 عصر
سلام
منم دقیقا با همچین مسئله مشکل دارم
طبق بررسی هایی که داشتم به 2 روش میشه این کار رو کرد یکی اینکه بیایم یه پوشه بسازیم و عکس ها رو اونجا ذخیره کنیم و آدرسشون رو داخل بانک که این روش یه ایرادی داره و اون اینه که اگه پوشه به هردلیلی پاک بشه دیگه آدرس عکسا بدردمون نمیخوره ولی یه خوبی که داره این تبادل اطلاعات از بانک و برنامه سریع تره و حجم دیتابیس تغییر زیادی نداره .
روش دوم اینه که بیایم خود عکس رو در بانک ذخیره کنیم که برای این کار فیلد مورد نظر در بانک رو از نوع longblob اگر اشتباه نگفته باشم انتخاب میکنیم ولی یه عیبی که داره حجم تبادل اطلاعات از بانک و برنامه خیلی زیاد میشه .
حالا مشکل من اینه که در هر دو روش میتونم upload رو انجام بدم اما هنگام نمایش عکس دقیقا با این مشکل مواجه میشم :
http://barnamenevis.org/showthread.php?284081-%D9%85%D8%B4%DA%A9%D9%84-%D8%A2%D9%BE%D9%84%D9%88%D8%AF

اگر راهنمایی کنید ممنون میشم