הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [PHP] בעיה מוזרה. פיירפוקס-מזהה כתמונה , אקספלורר-לא. (https://hosts.co.il/forums/showthread.php?t=41051)

dudu 06-03-07 22:26

[PHP] בעיה מוזרה. פיירפוקס-מזהה כתמונה , אקספלורר-לא.
 
PHP קוד:

if($file1_type=="image/jpeg" || $file1_type=="image/gif"){ 

בפיירפוקס זה עובד. לעומת זאת אותו קובץ שאתה מנסה להעלות דרך האקספלורר אינו מזהה כתמונה.

האם צריך לשנות משהו בתנאי? והאם עוד מישהו כאן נתקל בזה?

תודה!:-)

Tomer 06-03-07 22:29

אפשר לדעת מאיפה $file_type1 מקבל את ה MIME Type ? תציג כאן את הפונקציה.

dudu 06-03-07 22:35

HTML קוד:

<form action="member_update.php" method="POST"  enctype="multipart/form-data">
<input type="file" name="file1" value="" />

ולאחר שליחת הטופס:
PHP קוד:

if ($file1 !== "")
{
if(
$file1_size <= 524288){
if(
$file1_type=="image/jpeg" || $file1_type=="image/gif"){


if(
$file1_type=="image/jpeg"){
$time=md5(time());
$new_name substr($time0,5); 
$file1_name $new_name.".jpg";
}

if(
$file1_type=="image/gif"){
$time=md5(time());
$new_name substr($time0,5); 
$file1_name $new_name.".gif";
}

   
move_uploaded_file$file1 "/home/...".$file1_name 


Eli-Hai 06-03-07 22:38

תכניס את כל הפורמטים לתוך מערך אחד. בכל פעם שמשתמש יעלה את הקובץ, פשוט תבדוק את הפורמט מול הפורמטים המורשים עם הפונקציה in_array().

הקודים חוזרים על עצמם, וחבל. אין יעילות. הכל אמור לעבוד פעם אחת, לדוגמא -
PHP קוד:

$formats = array(
=> "image/jpeg",
=> "image/gif",
);

if( 
in_array($uploaded_file_name$formats) )
// functions
else
// errors 


בניה 08-03-07 23:39

הcontent type שבא עם הקובץ המועלה נשלח מהדפדפן.
ז"א אם אתה עושה בדיקה על זה אז יכולים לעבוד עליך.
תבדוק לפי הסיומת וזהו.

dudu 09-03-07 13:51

תודה עשיתי כבר לפי סיומת הכי נוח ובטוח.

Tomer 09-03-07 14:10

ציטוט:

נכתב במקור על ידי dudu (פרסם 435787)
תודה עשיתי כבר לפי סיומת הכי נוח ובטוח.

זה לא בטוח בכלל.. אפשר לשנות סיומת מ EXE ל JPG ולהעלות - לתת לאחרים להוריד ולשנות סיומת..

BlueNosE 09-03-07 18:12

ציטוט:

נכתב במקור על ידי Tomer (פרסם 435808)
זה לא בטוח בכלל.. אפשר לשנות סיומת מ EXE ל JPG ולהעלות - לתת לאחרים להוריד ולשנות סיומת..

אז מה אתה מציע תומר? גם MIME TYPE יעשה אותה פעולה |:

Tomer 09-03-07 18:16

ציטוט:

נכתב במקור על ידי BlueNosE (פרסם 436051)
אז מה אתה מציע תומר? גם MIME TYPE יעשה אותה פעולה |:

לא.. אם תשנה סיומת של קובץ מ doc ל jpg - ה MIME Type עדיין יהיה application/msword ולא תמונה.

BlueNosE 09-03-07 18:33

ציטוט:

נכתב במקור על ידי Tomer (פרסם 436054)
לא.. אם תשנה סיומת של קובץ מ doc ל jpg - ה MIME Type עדיין יהיה application/msword ולא תמונה.

רגע, אז מה הבעיה?
get_mime_type |Rolleyes|


כל הזמנים הם GMT +2. הזמן כעת הוא 06:45.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ