![]() |
בעיה בקוד העלאת תמונה
שלום לכולם.
הבעיה היא כזאת... יש לי אתר של העלאת תמונות לדירוג. האתר אמור להעלות קבצי תמונה JPG לתוך סיפריה IMAGE ולרשום בטבלאות SQL של המשתמש שהעלה אותם את הנתיב של התמונה, וכך ברגע שהמשתמש נכנס לאתר , התמונות משוייכות אליו דרך ה SQL. כשאני מנסה להעלות תמונה, הוא רושם את הערכים ב SQL (את קישור הקובץ) , אבל לא מעלה את הקובץ בפועל לסיפריה, לסיפריה יש הרשאה 777. כמו כן, בשרת אחר, הכל עובד חלק ותקין, הבעיה שעל השרת הזה אני לא רוצה להעלות עוד אתר, ניסיתי את האתר הזה על 2 שרתים נוספים ובשניהם אותה בעיה... מה יכולה להיות הבעיה ? אתם יכולים להגיד בעיה בקוד, אבל אז איך יש שרת שזה כן עובד שם ? אשמח לתשובות או רעיונות לנסות ולפתור את זה, תודה רבה. |
הבעיה היא בקישור בין הRDBMS למודול זמן ריצה בסטאק של PHP.
ועכשיו ברצינות: 1. תביא את הקוד. 2. מה ההבדלים בין השרת שבו הקוד לא פועל לזה שהקוד פועל? safe mode? גרסאות php / mysql קוד לדוגמא: http://www.freebsd.co.il/test/upload מקור: http://www.freebsd.co.il/test/upload/index.txt |
<?
$dir="image/"; if(empty($_POST['sub'])) { ?> <center> <table border="1" dir="rtl" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#142437" width="100%"> <tr> <td class=tbl height="20" width="100%"> הוספת תמונה</td> </tr> <tr> <td class=tbl2 width="100%"><font color=#FFFFFF size=2>הכנס תמונה:</font></td> </tr> <tr> <td class=tbl3 width="100%"> <form method="POST" enctype="multipart/form-data"> <input type="file" name="files" size="20"></br><input type="submit" value="שלח" name="sub"></p> </form> </td> </tr> </table> </center> <? }else{ $_FILES['file']['name'] = str_replace(chr(32), "", $_FILES['file']['name']); $upname=explode("." , $_FILES['files']['name']); $upname[0] = str_replace(".", "", $upname[0]); $name=$upname['0'].".".$upname[1]; $rand=rand(156449,1977777777); if(eregi("[א-ת]+" , $upname[0])) { $name=$rand.".".$upname[1]; } if (file_exists($dir.$name)) { $name=$rand.".".$upname[1]; } if($_FILES['files']['size'] >= 1000*512) { echo "הקובץ גדול מהמותר"; } elseif( $upname[1] != "jpg" ) { echo "סיומת לא מותרת להעלאה"; } else{ $s=move_uploaded_file($files , $dir.$name); $s=mysql_query("insert into imgs (user,img) values ('".$_SESSION['user']."','$dir$name')")or die(mysql_error()); echo "העלאת בהצלחה."; } } ?> זה הקוד. גירסאות אסקיואל ופיאייגפי זהים לגבי סייפמוד, לא בדקתי, מה ההבדל אם הוא בסייפמוד או לא? תודה מראש. |
לא בטוח אבל לא יזיק לנסות.
תנסה לרשום את הנטיב המלא של התיקייה. במקום: ציטוט:
ציטוט:
|
תודה, אבל כבר ניסיתי ולא עבד...
|
כל הזמנים הם GMT +2. הזמן כעת הוא 06:16. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ