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

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

hi_sorie 27-07-07 20:01

[ PHP & FILES ] סתם משחק עם קבצים...
 
בניתי קוד שמוציא מכל תיקייה בשרת לפי get שהוא מקבל שזה שם התיקייה את כל הקבצים בתיקייה...
עד פה הכל יפה הכל תקין ...
הוספתי לו בדיקה כמה הוא "שוקל" וגם הכל תקין ...
עכשיו אני רוצה להוסיף תאריך שבו כל קובץ נוצר...
אני יודע שזה משהו עם :

קוד:

$lastupdate = date ("d/m/y", getlastmod());
אבל אני לא בטוח ...

הנה הקוד למי שמעוניין :

קוד:

<?php
$page = $_GET["page"];
if ($page != "muzik" && $page != "progs" && $page != "movies" && $page != "pics")
 {
  echo "לא נמצא מידע.";
 }
else{
function getFiles($path) {
  $files = array();
  $fileNames = array();
  $i = 0;
  if (is_dir($path)) {
      if ($dh = opendir($path)) {
          while (($file = readdir($dh)) !== false) {
              if ($file == "." || $file == "..") continue;
              $fullpath = $path . "/" . $file;
              $fkey = strtolower($file);
              while (array_key_exists($fkey,$fileNames)) $fkey .= " ";
              $a = stat($fullpath);
              $files[$fkey]['size'] = $a['size'];
              if ($a['size'] == 0) $files[$fkey]['sizetext'] = "-";
              else if ($a['size'] > 1024) $files[$fkey]['sizetext'] = (ceil($a['size']/1024*100)/100) . " K";
              else if ($a['size'] > 1024*1024) $files[$fkey]['sizetext'] = (ceil($a['size']/(1024*1024)*100)/100) . " Mb";
              else $files[$fkey]['sizetext'] = $a['size'] . " bytes";
              $files[$fkey]['name'] = $file;
              $files[$fkey]['type'] = filetype($fullpath);
              $fileNames[$i++] = $fkey;
          }
          closedir($dh);
      } else die ("Cannot open directory:  $path");
  } else die ("Path is not a directory:  $path");
  sort($fileNames,SORT_STRING);
  $sortedFiles = array();
  $i = 0;
  foreach($fileNames as $f) $sortedFiles[$i++] = $files[$f];
 
  return $sortedFiles;
}
 echo "<table border=\"0\">";
 if ($page=="members")
  {
  $DB->query("SELECT username FROM admin");
    while ($r = $DB->fetch_row())
        print("<tr><td>{$r['username']}</td></tr>");
  }
 else if (!$page)
  {
  echo "<tr><td>";
  echo file_get_contents("files/main.html");
  echo "</td></tr>";
  }
 else
  {
  $files = getFiles("files/{$page}");
  foreach ($files as $file)
  {
    if ($page=="pics")
    {
    $size=round(($file[size]/1000000), 2);; 
    echo "<tr><td style=\"align:left\">{$file[name]}</td><td style=\"align:center\">&nbsp;&nbsp;&nbsp;&nbsp;{$size} mb</td><td style=\"align:right\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"files/{$page}/{$file[name]}\">צפה</a></td></tr>\n";
    }
    else
    {
    $size=round(($file[size]/1000000), 2);; 
    echo "<tr><td style=\"align:left\">{$file[name]}</td><td style=\"align:center\">&nbsp;&nbsp;&nbsp;&nbsp;{$size} mb</td><td style=\"align:right\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"files/{$page}/{$file[name]}\">הורדה</a></td></tr>\n";
    }
  }
  }
 echo "</table>";
}
?>

והנה האתר http://www.sorya.vhost.co.il
תחת קטגוריה הורדות ...

מעוניין בפיתרון אפשרי ומה עוד אפשר לעשות ...

meshuga 27-07-07 20:23

לפי מה שאני זוכר, אין מתי נוצר, יש מתי פעם אחרונה נגעו בו/שינו אותו..

4ior 27-07-07 20:25

ציטוט:

נכתב במקור על ידי meshuga (פרסם 530904)
לפי מה שאני זוכר, אין מתי נוצר, יש מתי פעם אחרונה נגעו בו/שינו אותו..

נכון, עושים את זה על ידי filectime

DCB 27-07-07 20:28

יש לך טעות
getlastmod()
זו פונקציה שמשתמשים בה להוציא את התאריך האחרון בו הדף שונה

hi_sorie 27-07-07 20:44

זה

hi_sorie 27-07-07 20:44

זה getlastmod() בטוח רק איפה אני מכניס אותו ואיך ....?

hi_sorie 27-07-07 20:56

הצלחתי - למי שרוצה -

$files[$fkey]['lastM'] = date("d/m/y", getlastmod($a['name']));

מביא את התאריך שהועלה הקובץ...


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

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