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

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

CodeX 22-10-08 23:05

[שאלה] שלפית תמונות מתיקייה? הגיוני?
 
אני לא מתעסק עם זה הרבה אז אני לא יודע,
אפשר אולי לעשות עמוד ששולף את התמונות המסוימות מתיקייה נגיד X,
ומציג אותה בטבלה של 3 על 3?

משהו כמו שליפה של SQL רק שליפה של קובץ קןבץ מתוך התיקייה של התמונות,
אפשר לעשות דבר כזה?

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

אם כן,

מישהו יכול לכוון אותי ולהביא לי את הפונקצויות הללו ששולפות תתמונות?
(משהו כמו שליפה מהמסד)

תודה מראש!!

daMn 22-10-08 23:10

אם יש לך PHP5 אז תוכל להשתמש ב scandir.
אם אין לך PHP5 אז תוכל להשתמש ב readdir, שים לב לדוגמא השנייה.

CodeX 22-10-08 23:55

תודה,
יש לך אולי מושג איך אני הופך את הקוד הזה:
PHP קוד:

<?php
if ($handle opendir('img/avatars')) {
    while (
false !== ($file readdir($handle))) {
        if (
$file != "." && $file != "..") {
            echo 
"<img src='img/avatars/$file'><br>";
        }
    }
    
closedir($handle);
}
?>

שיציג כל תמונה ותמונה בכל תא בנפרד ב3 על 3?
יענו אין לי בעיה עם הלולאה והטבלה,
יש לי בעיה עם ה3 על 3 =\

אשמח אם תעזור..

עריכה:
ניסיתי לעשות את זה:
PHP קוד:

<table>
<?php 
if ($handle opendir('img/avatars')) 
    { 
        while (
false !== ($file readdir($handle))) 
    {
    for (
$j=1$j<=3$j++) 
    { echo 
"<tr>";  }
    for (
$j=1$j<=3$j++) {
        if (
$file != "." && $file != "..") { 
            echo 
"<td><img src='img/avatars/$file'></td>";  }
     } 
    echo 
"</tr>";
    } 
    
closedir($handle); 

?> 
</table>

אבל זה הציג לי כל תמונה 3 פעמים...

daMn 23-10-08 00:22

אני חושב שזה יעבוד, לא הרצתי.
PHP קוד:

<?php
if ($handle opendir('img/avatars')) {
    
$i 1;
    echo 
"<tr>";
    while (
false !== ($file readdir($handle))) {
        if (
$file != "." && $file != "..") {
            echo 
"<td><img src=\"img/avatars/$file\" /></td>";
            if ((
$i 3) == 0)
                echo 
"</tr><tr>";
            
$i++;
        }
    }
    
closedir($handle);
}
?>


CodeX 23-10-08 00:33

תודה רבה, עובד!
עריכה:
זה לא עשה לי 3 על 3 זה עשה לי את מה שנכנס ברוחב והשאר שם באורך..
מבין?

S-Preso 23-10-08 06:21

נצל"ש

איך ניתן לעשות שזה ישלוף רק תמונות (jpg,gif,png)מהתיקייה ויסדר אותם לפי הגודל?

pirsomet 23-10-08 06:52

S-Preso,
תבדוק כל פעם את הסיומת של הקובץ כשה אתה עובר על רשימת הקבצים שנמצאים בתיקיה.
אתה מתכוון לגודל של קובץ או תמונה(אורך, רוחב)?

בכל מקרה, עדיף שתראה את הקוד שכבר כתבת כדי לעשות את משה אתה צריך ותגיד מה לא הצליח לך. אז תהיה יותר קל לעזור לך.

shai_shoko 23-10-08 12:08

אממ יש לי קוד שעשיתי לא מזמן עם עמודים והכל..בקשה (רק תאבטח את הGET)
PHP קוד:

<?php 
$fileregex 
"[jpg|jpeg|png|gif]"
$dirname "/img/avatars/"
$dir opendir(".$dirname"); 
$images = array(); 
while (
$file readdir($dir)) 
 if (!
is_dir($dirname.$file) and $file <> ".." and $file <> "."
  if (
preg_match($fileregex,$file)) 
   
array_push($images,$dirname.$file); 
asort($images); 
$rpp 3;  
$ipr 3;  
$image_num count($images); 
$pages ceil($image_num / ($ipr $rpp)); 
$rows 1
if (isset(
$_GET['page'])) $page $_GET['page']; 
else 
$page 1
echo 
"<table>\n    <tr>\n"
for (
$i = ($ipr $rpp) * ($page 1); $i< ($ipr $rpp) * $page$i++) { 
if (
$i >= $image_num) break; 
echo 
"        <td>\n            <a href=\"".$images[$i]."\"><img height=\"100\" width=\"100\" src=\"".$images[$i]."\" /></a>\n        </td>\n"
if(
is_int(($i+1) / $ipr)) 

 echo 
"    </tr>\n    <tr>\n"
 
$rows++; 


echo 
"    </tr>\n</table>\n"
for(
$i 1$i<=$pages;$i++) 
echo 
"<a href=\"?page=$i\">$i</a>\n"
?>


CodeX 23-10-08 13:42

ציטוט:

נכתב במקור על ידי shai_shoko (פרסם 675994)
אממ יש לי קוד שעשיתי לא מזמן עם עמודים והכל..בקשה (רק תאבטח את הGET)
PHP קוד:

<?php 
$fileregex 
"[jpg|jpeg|png|gif]"
$dirname "/img/avatars/"
$dir opendir(".$dirname"); 
$images = array(); 
while (
$file readdir($dir)) 
 if (!
is_dir($dirname.$file) and $file <> ".." and $file <> "."
  if (
preg_match($fileregex,$file)) 
   
array_push($images,$dirname.$file); 
asort($images); 
$rpp 3;  
$ipr 3;  
$image_num count($images); 
$pages ceil($image_num / ($ipr $rpp)); 
$rows 1
if (isset(
$_GET['page'])) $page $_GET['page']; 
else 
$page 1
echo 
"<table>\n    <tr>\n"
for (
$i = ($ipr $rpp) * ($page 1); $i< ($ipr $rpp) * $page$i++) { 
if (
$i >= $image_num) break; 
echo 
"        <td>\n            <a href=\"".$images[$i]."\"><img height=\"100\" width=\"100\" src=\"".$images[$i]."\" /></a>\n        </td>\n"
if(
is_int(($i+1) / $ipr)) 

 echo 
"    </tr>\n    <tr>\n"
 
$rows++; 


echo 
"    </tr>\n</table>\n"
for(
$i 1$i<=$pages;$i++) 
echo 
"<a href=\"?page=$i\">$i</a>\n"
?>



תודה רבהה בידיוק מה שהייתי צריך!!
רק למה אני לא יכול לשנות את הDIR?
יענו זה מציג לי תתמונות עם שגיאה כי הוא מציג לי מהכתובת
http://localhost/img/avatars/avatar_1325.jpg

במקום
http://localhost/Namesite/img/avatars/avatar_1325.jpg


מוזר למה ניסיתי לעשות פה
PHP קוד:

$dirname "/img/avatars/"

עוד מעלה לNamesite אבל הוא הציג לי שגיאה..

CodeX 24-10-08 15:22

ציטוט:

נכתב במקור על ידי NitaY (פרסם 676004)
תודה רבהה בידיוק מה שהייתי צריך!!
רק למה אני לא יכול לשנות את הDIR?
יענו זה מציג לי תתמונות עם שגיאה כי הוא מציג לי מהכתובת
http://localhost/img/avatars/avatar_1325.jpg

במקום
http://localhost/Namesite/img/avatars/avatar_1325.jpg


מוזר למה ניסיתי לעשות פה
PHP קוד:

$dirname "/img/avatars/"

עוד מעלה לNamesite אבל הוא הציג לי שגיאה..

בבקשה מישהו?


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

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