Форум -> Files (модуль и блок) -> Определение размера файла | Определение размера файла |
---|
rocksmart | Дата: 15.04.2008, в 09:51 | Сообщение №1 | СтарожилПользователь №: 261 Сообщений: 330
| в архиве файлов переменную $a_homepage использовал как прикрепленный файл.
1 Проблема в том, что надо как то сделать чтобы определялся размер и ввыводился на страницу.
2 выводить полную ссылку до файла: uploads/files/public/MRpsTpwk7p_Green.zip . Как бы обрубить ее что бы выводило лишь название Green.zip
Вот код :
Модуля
Код | 1
| function view_file() {
global $hometext, $pagetitle, $prefix, $db, $admin, $module_name, $commentfiles, $poolfiles, $broclink, $admin_file, $defis, $datetime, $downfiles, $fidirectory, $figdactive, $figdwidth;
$lid = intval($_GET['lid']);
$result = $db->sql_query("SELECT cid, title, url, description, img, date, filesize, version, name, email, homepage, votes, totalvotes, totalcomments, hits FROM ".$prefix."_files WHERE lid='$lid'");
if ($db->sql_numrows($result) > 0) {
list($cid, $title, $url, $description,$f_img, $date, $f_size, $f_version, $a_name, $a_email, $a_homepage, $votes, $totalvotes, $totalcomments, $hits) = $db->sql_fetchrow($result);
$hometext = $description;
$pagetitle = "$defis "._FILES." $defis $title";
list($cat_title, $cat_description) = $db->sql_fetchrow($db->sql_query("SELECT title, cdescription FROM ".$prefix."_files_categories WHERE cid='$cid'"));
$pagetitle = "$defis "._FILES." $defis $cat_title";
formatTimestamp($date);
head();
menu();
OpenTable();
$a_email = ($a_email) ? "<a href=\"mailto:".$a_email."\"><img border=\"0\" src=\"images/blocks/Contact.gif\" alt=\""._FAUEMAIL."\"></a>" : "";
________ИЗМЕНЕНИЕ
$a_homepage = ($a_homepage) ? "<hr>прикрепленный <a href=\"".$a_homepage."\" target=\"_blank\">$a_homepage</a>" : "";________ИЗМЕНЕНИЕ
echo "<center><font class=\"block-title\">$title</font</center><hr>"
."<table border=\"0\" width=\"100%\" cellpadding=\"3\" cellspacing=\"0\"><tr><td>"._FILEAUTOR.": ".$a_name." ".$a_email." </td><td>"._FILEREITING.": ".vote_graphic($votes, $totalvotes)."</td></tr>"
."<td>"._FILECATEGORY.": <a href=\"index.php?name=Files&op=cat&id=$cid\">$cat_title</a></td></tr>"
."<tr><td>"._FILESIZE.": ".files_size($f_size)."</td><td>"._ADDDATE.": $datetime</td></tr>"
."<tr><td>"._FILEVERS.": $f_version</td><td>"._FILEHITS.": $hits</td></tr></table><hr>"
."<table border=\"0\" width=\"100%\" cellpadding=\"3\" cellspacing=\"0\"><tr><td>";
if ($f_img != "") {
$img = ($figdactive) ? create_img($fidirectory, $f_img, $figdwidth) : $f_img;
$imgf = (file_exists("".$fidirectory."/".$f_img."")) ? "".$fidirectory."/".$f_img."" : $f_img;
echo "<script language=\"JavaScript\" type=\"text/javascript\" src=\"javascripts/CaricaFoto.js\"></script>"
."<script language=\"JavaScript\" type=\"text/javascript\" src=\"javascripts/ShowPic.js\"></script>"
."<a href=\"javascript:CaricaFoto('".$imgf."')\" OnMouseOver=\"PicDivShow('".$imgf."');\" OnMouseOut=\"PicDivHide();\" border=\"0\" title=\"".$title."\"><img width=\"".$figdwidth."\" border=\"0\" align=\"left\" src=\"".$img."\" alt=\"".$title."\"></a>";
}
echo "".bb_decode($description)." <br><td>________ИЗМЕНЕНИЕ
$a_homepage________ИЗМЕНЕНИЕ</td></tr>";
if ($broclink == 1) echo "<tr><td colspan=\"2\"><a href=\"index.php?name=$module_name&op=broken&lid=$lid\"><img border=\"0\" src=\"images/red_dot.gif\" alt=\""._BROCFILE."\"> "._BROCFILE."</a></td></tr>";
echo "</table><hr><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" align=\"center\"><tr>";
if (is_user($user) OR $downfiles == "1") {
echo "<td><form method=\"POST\" action=\"index.php?name=$module_name\" style=\"display: inline\">"
."<input type=\"hidden\" name=\"lid\" value=\"$lid\">"
."<input type=\"hidden\" name=\"op\" value=\"getit\">"
."<input type=\"submit\" onClick=\"window.open('$url')\" value=\""._DOWNLFILE."\"> </form></td>";
}
if ($poolfiles == 1) {
echo "<td><form method=\"POST\" action=\"index.php?name=$module_name\" style=\"display: inline\">"
."<input type=\"hidden\" name=\"op\" value=\"pool\">"
."<input type=\"hidden\" name=\"lid\" value=\"$lid\">"
."<select name=\"send_reiting\">"
."<option selected value=\"5\">"._RATE5."</option>"
."<option value=\"4\">"._RATE4."</option>"
."<option value=\"3\">"._RATE3."</option>"
."<option value=\"2\">"._RATE2."</option>"
."<option value=\"1\">"._RATE1."</option></select> "
."<input type=\"submit\" value=\""._RATEFILE."\"></form></td>";
}
echo "</tr></table>";
if (is_admin($admin)) echo "<center>[ <a href=".$admin_file.".php?op=delit_file&lid=$lid>"._DELETE."</a> | <a href=".$admin_file.".php?op=edit_files&lid=$lid>"._EDIT."</a> ]</center>";
CloseTable();
if ($commentfiles == 1) {
echo "<a name=\"$lid\"></a>";
ShowComments($lid);
}
foot();
} else {
Header("Location: index.php?name=".$module_name."");
}
} |
Вот код админки
Код | 1
| function file_save($title, $description, $cid, $filelink, $imglink, $author, $authormail, $authorurl, $f_version, $filesize) {
global $prefix, $db, $path, $admin_file, $max_size, $ftypefile, $stop;
$description = save_text($description);
if ($filelink == "http://") $filelink = "";
if ($imglink == "http://") $imglink = "";
$cid = intval($cid);
$ip = getenv("REMOTE_ADDR");
$filename = upload($path, $ftypefile, $max_size, "Files", "800", "800");
global $fitypefile, $fimaxsize, $fiwidth, $fiheight;
$_FILES['userfile'] = $_FILES['userimg'];
$img_f1 = explode(".", "$filename");
$img_f = $img_f1[0];
$img_new_link = upload($path, $fitypefile, $fimaxsize, $img_f, $fiwidth, $fiheight);
if (isset ($img_new_link)) {$imglink = $path."/".$img_new_link;}
________ИЗМЕНЕНИЕ
global $ffile, $fimaxsize,$fiwidth , $fiheight;
$_FILES['userfile'] = $_FILES['authorurl'];
$authorurl = explode(".", "$filename");
$authorurl = upload($path, $ffile, $fimaxsize, $authorurl, $fiwidth, $fiheight);
if (isset ($authorurl)) {$authorurl = $path."/".$authorurl;}
________ИЗМЕНЕНИЕ
if ($filename && !$stop) {
$file_name = "".$path."/".$filename."";
$file_size = filesize($file_name);
$db->sql_query("INSERT INTO ".$prefix."_files (lid, cid, title, description, url, img, date, filesize, version, name, email, homepage, ip_sender, status) VALUES (NULL, '$cid', '$title', '$description', '$file_name', '$imglink', now(), '$file_size', '$f_version', '$author', '$authormail', '$authorurl', '$ip', '1')");
} elseif ($filelink && !$stop) {
$file_name = $filelink;
$file_size = intval($filesize);
$db->sql_query("INSERT INTO ".$prefix."_files (lid, cid, title, description, url, img, date, filesize, version, name, email, homepage, ip_sender, status) VALUES (NULL, '$cid', '$title', '$description', '$file_name', '$imglink', now(), '$file_size', '$f_version', '$author', '$authormail', '$authorurl', '$ip', '1')");
} elseif ($stop) {
$stop = $stop;
} else {
$stop = ""._UPLOADEROR2."";
}
if (!$stop) {
Header("Location: ".$admin_file.".php?op=files");
} else {
add_files();
}
} |
Вот код config
Код | 1
| $temp_path = "uploads/files/temp";
$path = "uploads/files/public";
$max_size = "20971520";
$ftypefile = "zip,gzip,rar,exe";
$fidirectory = "";
$fitypefile = "gif,jpg,jpeg,png";
$fimaxsize = "20971520";
$fiwidth = "700";
$fiheight = "700";
________ИЗМЕНЕНИЕ
$ffile = "gif,jpg,jpeg,png,zip,gzip,rar,exe";
$fsize = "20971520";
$fidth = "700";
$fight = "700";
________ИЗМЕНЕНИЕ
$figdwidth = "150";
$numsubkat = "10";
$tabcolumn = "3";
$filenum = "10";
$file_t = "86400";
$figdactive = "1";
$commentfiles = "1";
$poolfiles = "1";
$addfiles = "1";
$addquest = "1";
$showsubkat = "1";
$broclink = "0";
$downfiles = "0";
$uploadfiles = "1"; |
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Отредактированно rocksmart 15.04.2008 г. в 09:59:10 |
| | | rocksmart | Дата: 15.04.2008, в 11:05 | Сообщение №2 | СтарожилПользователь №: 261 Сообщений: 330
| Кто мне подскажет как ссылку обрезать
$linkstrip = ereg_replace("_", " ", cutstr($a_homepage, 10));
это не помогает |
| | Insecticide | Дата: 15.04.2008, в 11:22 | Сообщение №3 | Активный участникПользователь №: 182 Сообщений: 130
| $linkstrip = preg_replace ('~\S*/~Ui','', $a_homepage);
в результате из ссылки должен удалиться весь путь и останется только название архива. дальше, думаю, сообразишь, как быть.
а размер можно определить так:
$size = filesize($a_homepage);
или вот так:
$size = files_size(filesize($a_homepage)); |
| | SHAKA1 | Дата: 15.04.2008, в 11:55 | Сообщение №4 | УчастникПользователь №: 323 Сообщений: 77
| Цитата | Как бы обрубить ее что бы выводило лишь название Green.zip |
Так попробуй:
Код | 1
| $upload="uploads/files/public/";
$name_ah = preg_replace("#".$upload."(.*?)_#si", "", $a_homepage);
//________ИЗМЕНЕНИЕ
$a_homepage = ($a_homepage) ? "<hr>прикрепленный <a href=\"".$a_homepage."\" target=\"_blank\">$name_ah</a>" : "";
//________ИЗМЕНЕНИЕ |
|
| | rocksmart | Дата: 15.04.2008, в 12:17 | Сообщение №5 | СтарожилПользователь №: 261 Сообщений: 330
| Insecticide, спасибо большое все работает |
| | | Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!
|
|