|
|
|
|
|
для: cheops
(02.11.2006 в 19:43)
| | u menya poluchilos , stranno | |
|
|
|
|
|
|
|
для: mrklon
(02.11.2006 в 17:32)
| | Без использования промежуточного массива не получится. | |
|
|
|
|
|
|
|
для: ЯR
(02.11.2006 в 13:44)
| | Спасибо!
Вот новая задачка:
Если я открываю директорию, и "readdir"-ом читаю файлы, то он их выводит по такому принципу:
1.dat
10.dat
11.dat
12.dat
13.dat
-//-
19.dat
2.dat
21.dat
и т.д.
А нужно:
1.dat
2.dat
3.dat
4.dat
Я нехочу использовать сортировку массива, слишком дорого будет. Нельзя-ли заставить "readdir" Работать понормальному? | |
|
|
|
|
|
|
|
для: mrklon
(02.11.2006 в 11:14)
| | Значит у вас ничего из файла не прочиталось.
Поэтому и ошбики.
Может заменить
<?php
$db_msg_open[$i]=fopen("db/".$db_read[$i],"r");
$db_msg_read[$i]=fgets($db_msg_open[$i],1000);
fclose($db_msg_open[$i]);
?>
|
на
<?php
$db_msg_read[$i] = file_get_contents("db/".$db_read[$i]);
?>
|
Может так заработает | |
|
|
|
|
|
|
|
для: ЯR
(02.11.2006 в 04:20)
| | Array ( [3] => [4] => [5] => )
Незнаю, что это может значить :-{| | |
|
|
|
|
|
|
|
для: mrklon
(01.11.2006 в 22:48)
| | а приведи пример print_r($db_msg_read) (что оно выдаёт?) | |
|
|
|
|
|
|
|
для: ЯR
(01.11.2006 в 11:28)
| | Так я привел не весь код, Ту часть что 100% работает - я заменил на "############" Да я же отметил: какая строка 69-ая.
Вот все целиком:
<a href="forms.php" target="_blank">FORMS</a><hr><hr>
<?
$i=0;
$clinks=6; // skolko ssilok pokazivat
$k=3; //pokazivat po *
$v=15; //vsego strok
$vk=ceil($v/$k); //vsego stranits
$page = $HTTP_GET_VARS["cnt"];
if (empty($page))
{
$page=1;
}
$page=$page-1;
#----------------------------------------------------------------------------------
if ($v>$k){
if($page+1>1){ echo "<a href=index.php?cnt=1> << </a>";}
if($page+1>1){ echo "<a href=index.php?cnt=",$page+1-1,"> < </a>";}
for($i=0;($page+1)-($clinks/2)+$i <= ($page+1)+($clinks/2) ;$i++)
{
if(($page+1)-($clinks/2)+$i != $page+1)
{
if(($page+1)-($clinks/2)+$i > 0 and ($page+1)-($clinks/2)+$i <= $vk)
{echo "<a href=index.php?cnt=",($page+1)-($clinks/2)+$i,">",($page+1)-($clinks/2)+$i,"</a>";}
}
else
{
echo "<b> ",($page+1)," </b>";
}
}
if($page+1<=$vk-1){ echo "<a href=index.php?cnt=",$page+1+1,"> > </a>";}
if($page+1<=$vk-1){ echo "<a href=index.php?cnt=",$vk,"> >> </a>";}
}
echo("<hr>");
#----------------------------------------------------------------------------------
$msg_tmpl_open=fopen("tmpl/template.html","r");
$msg_tmpl_read=fread($msg_tmpl_open,10000);
list($shapka,$msg_tmpl,$niz)=explode("{{msg_template}}",$msg_tmpl_read);
#----------------------------------------------------------------------------------
$db_open=opendir("./db");
for($i=-2; $i < $page*$k+$k ;$i++)
{
$db_read[$i]=readdir($db_open);
if ($db_read[$i]!="." and $db_read[$i]!=".." and ($page*$k <= $i))
{
$db_msg_open[$i]=fopen("db/".$db_read[$i],"r");
$db_msg_read[$i]=fgets($db_msg_open[$i],1000);
list($nik[$i],$mail[$i],$web[$i],$msg[$i],$data[$i],$otvet[$i])=explode("|",$db_msg_read[$i]);
$vivod1=preg_replace("/{{nik}}/",$nik[$i],$msg_tmpl);
echo $vivod1;
fclose($db_msg_open[$i]);
}
else
{
unset($db_read[$i]);
}
}
?>
|
| |
|
|
|
|
|
|
|
для: mrklon
(31.10.2006 в 23:43)
| | Так тут вроде всего около 40 строк :-) | |
|
|
|
|
|
|
|
для: Trianon
(01.11.2006 в 00:06)
| | делай как тебе удобнее.
Думаю, большой разницы нет. | |
|
|
|
|
|
|
|
для: mrklon
(31.10.2006 в 23:43)
| | >Но, я думаю прочитать 10 файлов из 200 проще, чем открывать файл в 200 строк и читать оттуда 10 строк...
Совершенно безосновательное предположение.
>Я верю что readdir() быстрее fgets()...
readdir сама по себе файл не читает.
а readdir+file будет медленнее fgets | |
|
|
|
|