> 12; $pagesize = 10; $template = ''; if (isset($_REQUEST['action'])) { $action = $_REQUEST['action']; if ($action = 'add') add($_REQUEST['code']); else if ($action = 'remove') remove($_REQUEST['reomve_code']); } $page=createlist((int)$_REQUEST['pg']); $template = implode('', file($templates)); $template = str_replace(array('\\', '"'), array('\\\\', '\\"'), $template); eval('$page = "'.$template.'";'); echo $page; function add($code) { global $count, $pagesize, $f; $fh = fopen($f, 'r+b'); $pos = -1; for ($i=0; $i<$count;$i++) { echo $l = fread($fh, 4096); if (substr($l, 0, 4)=='DELE') { echo 'd'; $pos = $i; fseek($fh, -4096, SEEK_CUR); } } if ($pos == -1) $pos = $count++; $pg = floor($pos/$pagesize); $code = str_pad($code, 4096, ' '); fwrite($fh, $code, 4096); fclose($fh); echo 'http://'.$_SERVER['SERVER_NAME'].'/linker.php?pg='.$pg; die(); } function remove($code) { global $count, $f; if ($count <= $code || $code < 0) die('ERROR'); $pos = $code << 12; $fh = fopen($f, 'r+b'); fseek($fh, $pos); fwrite($fh, 'DELE', 4); fclose($fh); echo 'DELETED'; die(); } function createlist($page) { global $count, $f, $pagesize; $pos = $page*$pagesize; if ($count <= $pos || $page < 0) die('ERROR'); $fh = fopen($f, 'rb'); fseek($fh, $pos << 12); $s = '
    '; for ($i=0; $i<$pagesize;$i++) { $l= fread($fh, 4096); if (substr($l, 4)!='DELE') $s .= '
  1. '.trim($l); } fclose($fh); $s.='
'; $s .= '

страницы:'; $p = floor(($count + $pagesize - 1)/$pagesize); for($i=0;$i<$p;$i++) { $s.= ' '.($i+1).''; } return $s; } ?>