View Full Version : سوال: کمک برای ایجاد شرط در هنگام پست دادن
mamali-mohammad
جمعه 12 فروردین 1390, 19:56 عصر
سلام
دوستان چند روز خیلی دارم زحمت میدم
شرمنده
سوال دارم :
من دوتا Brows گذاشتم
یکیش باید SWF آپلود کنم و یکی باید JPG
حالا میخوام دستور بدم که اگه از Brows1 آپلود شد ، لینک SWF رو بده ، اگه از Brows2 آپلود شد ، لینک JPG رو نشون بده
چطوری میشه چنین کاری کرد ؟
این نحوه آپلود :
$pid=mysql_insert_id();
$pids=mysql_insert_id();
$newname="$pid.jpg";
move_uploaded_file($_FILES['brows2']['tmp_name'], "../upload_images/$newname");
$newnames=''.$pids.'s.swf';
move_uploaded_file($_FILES['brows1']['tmp_name'], "../upload_images/$newnames");
و اینم کد نمایش :
$product_list .='<div id="post_last">
<div id="last_post_pic">
<img src="upload_images/'.$id.'.jpg" width="117" height="117" style="margin-left:1px; margin-top:1px;" />
</div>
<div id="last_post_text">
<h1>'.$title.'</h1></br>
<h2>تحویل به صورت : <span class="n">'.$delivery.'</span></h2>
<h2>همکاری با : <span class="n">'.$assist.'</span></h2>
<h2>موضوع : <span class="n">'.$subject.'</span></h2>
<h2>رنگبندی : <span class="n">'.$color.'</span></h2>
<h2>کد پروژه : <span class="n">'.$code.'</span></h2>
</div>
<div id="last_post_button">
<ul style="text-align:center; margin-right:15px;">: دسته بندی<br/><span class="n">'.$category.'</span></ul>
<a id="example3" href="upload_images/'.$id.'s.swf">
<img src="images/prev.gif" border="0" style="margin-left:23px; margin-top:8px;"/></a>
<a href="cat.php?category='.$category.'"><img src="images/list.gif" border="0" style="margin-left:23px; margin-top:2px;"/></a>
<ul style="margin-top:6px;">تاریخ ارسال : <span class="n">'.$date.'</span></ul>
</div><br style="clear:both;" />
</div><div id="lines">
</div>';
اگه توجه کنید ، در کد من همزمان هردوتاشو میزاره
حالا من میخوام بینشون شرط بیاد
ممنون
mamali-mohammad
شنبه 13 فروردین 1390, 16:02 عصر
دوستان یه راهنمایی کنید
یه شرط بزارم که یکیشو نشون بده
king-net
شنبه 13 فروردین 1390, 16:11 عصر
اگه منظورتون رو درست متوجه شده باشم ، شما باید اول نوع فایل رو تشخیص بدید بعدش یک ایف بگذارید که اگه jpg بود با header برات بفرستش به جایی که می خوای .
mamali-mohammad
شنبه 13 فروردین 1390, 17:01 عصر
تقریبا همینه
یه مثال ساده بزنم :
یه سیب داریم و یه گلابی
اگه سیب انتخاب شد ، چاپ کن Sib
اگه گلابی انتخاب شد ، چاپ کن Golabi
چنین چیزی میخوام
king-net
شنبه 13 فروردین 1390, 17:18 عصر
$s = 'sib';
$g = 'golabi';
if($s == 'sib'){
echo 'sib';
}
elseif($g == 'golabi'){
echo 'golabi';
}
else{
echo 'hichkodam'l
}
:لبخند:
mamali-mohammad
شنبه 13 فروردین 1390, 19:30 عصر
ممنون داداش
اما این جواب کار منو نمیده
دقیقا برای این قسمت نمیدونم چی بنویسم :
if($s == 'sib'){
چی برابر با چی باشه ؟
این مهم هست برام
Mr.Moghadam
شنبه 13 فروردین 1390, 20:29 عصر
ممنون داداش
اما این جواب کار منو نمیده
دقیقا برای این قسمت نمیدونم چی بنویسم :
if($s == 'sib'){
چی برابر با چی باشه ؟
این مهم هست برام
if($_FILES["file"]["type"] == 'jpg')
echo 'jpg';
if($_FILES["file"]["type"] == 'swf')
echo 'swf';
mamali-mohammad
شنبه 13 فروردین 1390, 21:28 عصر
سلام
ممنون
مشکل من اینه که مکان های آپلود در کنترل پنل هست و نمایش در صفحه اصلی
این در کنترل پنل دستورش :
<?php
if (isset($_POST['product_name'])){
$product_name=mysql_real_escape_string($_POST['product_name']);
$price=mysql_real_escape_string($_POST['price']);
$category=mysql_real_escape_string($_POST['category']);
$subcategory=mysql_real_escape_string($_POST['subcategory']);
$details=mysql_real_escape_string($_POST['details']);
$sql=mysql_query("SELECT id FROM products WHERE product_name='$product_name' LIMIT 1");
$productMatch=mysql_num_rows($sql);
if ($productMatch > 0){
echo "Sorry";
exit();
}
$sql=mysql_query("INSERT INTO products (product_name, price, details, category,subcategory,date_added)
VALUES('$product_name','$price','$details','$categ ory','$subcategory',now())") or die (mysql_error());
$pid=mysql_insert_id();
move_uploaded_file($_FILES['fileField']['tmp_name'], "../inventory_images/'.$pid.'");
header("location: inventory_list.php");
exit();
}
?>
اینم نمایش در صفحه اصلی :
<?php
$sql2 = mysql_query("SELECT * FROM products ORDER BY id DESC $limit");
$dynamicList="";
while($row = mysql_fetch_array($sql2)){
$id=$row["id"];
$category=$row["category"];
$price=$row["price"];
$product_name=$row["product_name"];
$date_added=strftime("%b,%d,%Y",strtotime($row["date_added"]));
$dynamicList .='<table width="500" border="1">
<tr>
<td width="126"><img src="inventory_images/'. $id .'.jpg"/></a></td>
<td width="300"><p>'. $product_name .'</p>
<p>$ '. $price .'</p>
<p><a href="product.php?id='. $id .'">view</a></p>
<p><a href="cate.php?category='. $category .'">view</a></p></td>
</tr>
</table>';
}
?>
که با Echo کردن dynamicList در html محتویات رو به صورت چرخشی نشون میده
ممنون میشم کد دقیقتری برای شرطی کردن بدید
یه چیز دیگه ، نحوه آپلود فایل صحیح هست ؟
Mr.Moghadam
شنبه 13 فروردین 1390, 22:36 عصر
من دوتا Brows گذاشتم
یکیش باید SWF آپلود کنم و یکی باید JPG
حالا میخوام دستور بدم که اگه از Brows1 آپلود شد ، لینک SWF رو بده ، اگه از Brows2 آپلود شد ، لینک JPG رو نشون بده
چطوری میشه چنین کاری کرد ؟
برای چک کردن اینکه کدوم یکی از فایلها آپلود شده از کد زیر استفاده کن
$pids=mysql_insert_id();
if ($_FILES["brows1"]["error"] == 0)
{
move_uploaded_file($_FILES['brows1']['tmp_name'], "../upload_images/$newname");
}
if ($_FILES["brows2"]["error"] == 0)
{
move_uploaded_file($_FILES['brows2']['tmp_name'], "../upload_images/$newname");
}
یا
if(file_exists($_FILES['brows1']['tmp_name']))
{
move_uploaded_file($_FILES['brows1']['tmp_name'], "../upload_images/$newname");
}
if(file_exists($_FILES["brows2"]["tmp_name"]))
{
move_uploaded_file($_FILES['brows2']['tmp_name'], "../upload_images/$newname");
}
مشکل من اینه که مکان های آپلود در کنترل پنل هست و نمایش در صفحه اصلی
این قسمتش رو نفهمیدم
mamali-mohammad
شنبه 13 فروردین 1390, 22:49 عصر
ممنون
من سوال رو یه طور دیگه می پرسم
یه Brows داریم .
1- یه کد بده که هر فایل آپلود شد ، با فرمت خودش ذخیره کنه
اگه JPG بود در مسیر مورد نظر ما jpg ذخیره کنه و اگه swf بود هم با فرمت خودش
به طور کلی ، هیچ تغییری در فرمت ها ایجاد نشه
2- کد فراخوانیش هم بده لطفا
مثلا
<img src="yourname/img.jpg" />
این حالتی برای jpg هست
حالا میخوام اتوماتیک فرمت فایل رو خودش بزاره
ممنون
mamali-mohammad
شنبه 13 فروردین 1390, 23:47 عصر
نحوه آپلود رو اوکی کردم :
$fileName = $_FILES["fileField"]["name"];
$fileType = $_FILES["fileField"]["type"];
$fileTmpLoc = $_FILES["fileField"]["tmp_name"];
move_uploaded_file($fileTmpLoc, "../inventory_images/$fileName");
حالا مونده تحوه تغییر نام هنگام ذخیره
و همچنین فراخوانی برای نمایش
mamali-mohammad
یک شنبه 14 فروردین 1390, 00:56 صبح
$pid=mysql_insert_id();
$fileName = $_FILES["fileField"]["name"];
$fileType = $_FILES["fileField"]["type"];
$fileTmpLoc = $_FILES["fileField"]["tmp_name"];
$newname="$pid.jpg";
move_uploaded_file($fileTmpLoc, "../inventory_images/$fileName");
rename("../inventory_images/$fileName","../inventory_images/$pid");
آقا اینم برای تغییر نام !!!
تنها مشکل اینه که زمانی که $fileName به $pid تغییر میکنه ، باعث میشه فرمت فایل های آپلود شده حذف بشن
مثلا ali.jpg میشه ali !
چه کنم ؟ :(
mamali-mohammad
یک شنبه 14 فروردین 1390, 14:21 عصر
دوستان
میتونید کمک کنید ؟
ممنون
Mr.Moghadam
یک شنبه 14 فروردین 1390, 14:45 عصر
$pid=mysql_insert_id();
$fileName = $_FILES["fileField"]["name"];
$fileType = $_FILES["fileField"]["type"];
$fileTmpLoc = $_FILES["fileField"]["tmp_name"];
$newname="$pid.jpg";
move_uploaded_file($fileTmpLoc, "../inventory_images/$fileName");
rename("../inventory_images/$fileName","../inventory_images/$pid");
آقا اینم برای تغییر نام !!!
تنها مشکل اینه که زمانی که $fileName به $pid تغییر میکنه ، باعث میشه فرمت فایل های آپلود شده حذف بشن
مثلا ali.jpg میشه ali !
چه کنم ؟ :(
اگه مثل زیر عمل کنی چی؟
$fileType = $_FILES["fileField"]["type"];
rename("../inventory_images/$fileName","../inventory_images/$pid".$fileType);
mamali-mohammad
یک شنبه 14 فروردین 1390, 15:07 عصر
خیر ،
جواب نداد
Mr.Moghadam
یک شنبه 14 فروردین 1390, 19:13 عصر
$pid=mysql_insert_id();
$fileName = $_FILES["fileField"]["name"];
$fileType = $_FILES["fileField"]["type"];
$fileTmpLoc = $_FILES["fileField"]["tmp_name"];
$newname="$pid.jpg";
move_uploaded_file($fileTmpLoc, "../inventory_images/".$newname.$fileType);
// rename("../inventory_images/$fileName","../inventory_images/$pid");
??
mamali-mohammad
یک شنبه 14 فروردین 1390, 20:13 عصر
سلام
داداش اینم جواب نداد
خودم بلاخره انجام دادم :
$exp = substr($fileName ,-3);
move_uploaded_file($fileTmpLoc, "../inventory_images/$fileName");
rename("../inventory_images/$fileName",'../inventory_images/'.$pid.'.'.$exp.'');
فقط مونده نحوه نمایش که متاسفانه هنوز نمی تونم انجام بدم
Mr.Moghadam
یک شنبه 14 فروردین 1390, 21:52 عصر
از این روش استفاده کنی بهتره چون ممکنه پسوندی 4 حرفی هم بخواد آپلود شه یا دوحرفی
$fileType = $_FILES["fileField"]["type"];
move_uploaded_file($fileTmpLoc, "../inventory_images/".$pid.'.'.$fileType);
//rename("../inventory_images/$fileName",'../inventory_images/'.$pid.'.'.$exp.'');
برای نمایش میتونی اگر فقط دوتا پسوند داری میتونی وقتی که $pid رو از دیتابیس خوندی برای دوتاش چک کنی ببینی فایل با این نام و پسوند وجود داره یا نه اگه نبود اون یکی رو چک کن .
mamali-mohammad
یک شنبه 14 فروردین 1390, 22:16 عصر
عکس ها در دیتابیس ذخیره نمیشه
در فولدر ذخیره میشه
چطوری بخونه ؟
Mr.Moghadam
یک شنبه 14 فروردین 1390, 23:13 عصر
درصورتی که فقط از پسوندهای jpg یا swf استفاده میکنی به صورت زیر اما طوری که خودت میخوای تغییرش بده
$pig = $row['id'];
if(file_exists("inventory_images/$pid.jpg"))
echo "Image";
if(file_exists("inventory_images/$pid.swf"))
echo "swf";
اما اگر پسوند عکسات چندتا بود باید پسوندها رو توی آرایه قرار بدی وتوی یه حلقه foreach هر بار چک کنی و . . .
mamali-mohammad
یک شنبه 14 فروردین 1390, 23:45 عصر
ممنون دوست من
میشه دقیقش رو بهم بدی ؟
با کدهای خودم
چون هرکاری میکنه ست نمیشه
mamali-mohammad
دوشنبه 15 فروردین 1390, 00:03 صبح
ممنون عزیزم
ردیف شد
دمت گرم
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.