Advertisement
terorama

PHP / Snippets

Jun 9th, 2013
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 24.25 KB | None | 0 0
  1. <?php
  2. //---------------------------------------------------------------------------
  3. ini_set('display_errors',1);
  4. error_reporting(E_ALL);
  5.  
  6. $dir  = $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['REQUEST_URI']);
  7.  
  8.    $z = scandir($dir);
  9.  
  10.    while (list($key,$val)=each($z)) {
  11.        $z[$key] = $dir.'/'.$val;
  12.    }
  13.  
  14.    $z = array_values(array_filter($z,'uu'));
  15.  
  16.    uasort($z, 'uuu');
  17.  
  18.    foreach ($z as $el) {
  19.       echo '<h2>'.substr(strrchr($el,'/'),1).' '.date('H:i',filemtime($el)).'</h2>';
  20.       $s = file_get_contents($el);
  21.       echo '<pre>'.htmlentities($s).'</pre>';
  22.    }
  23.  
  24. function uu($a) {
  25.  
  26.   $dt = strtotime(date('d.m.Y'));
  27.  
  28.    if (substr($a,-4)!='.php')
  29.       return false;
  30.  
  31.    if (filemtime($a)<$dt)
  32.       return false;
  33.  
  34.    return true;
  35. }
  36.  
  37. function uuu($a,$b) {
  38.  
  39.    return filemtime($b)-filemtime($a);
  40. }
  41.  
  42. ?>
  43.  
  44. <?php
  45. //---------------------------------------------------------------------------
  46. function cde($db) {
  47.   if ($db->errno!=0)
  48.      throw new Exception ('db error: '.$db->error);
  49. }
  50.  
  51. session_start();
  52.  
  53. $db = new mysqli ('','','','');
  54. if (mysqli_connect_errno())
  55.    throw new Exception ('connect error: '.mysqli_connect_error());
  56.  
  57.  
  58. check_db();
  59.  
  60. if (isset($_GET['checkout'])) {
  61.    checkout();
  62.    exit();
  63. }
  64.  
  65. if (isset($_GET['add_to_basket'])) {
  66.    add_to_basket($_GET['add_to_basket']);
  67. }
  68.  
  69. if (isset($_GET['delete_from_basket'])) {
  70.    delete_from_basket($_GET['delete_from_basket']);
  71.    show_basket();
  72.    exit();
  73.    }
  74.  
  75. if (isset($_GET['show_basket'])) {
  76.    show_basket();
  77.    exit();
  78. }
  79.  
  80. show_page();
  81.  
  82.  
  83. //---------------------------------
  84. function check_db() {
  85.    global $db;
  86.  
  87.    $rez = $db->query('show tables like \'zshop\'');
  88.    cde($db);
  89.    
  90.    if ($rez->num_rows==0) {
  91.       $db->query('create table zshop( id int(11) not null auto_increment,'.
  92.          'product varchar(500), rating int(11),'.
  93.          'primary key (`id`))');
  94.  
  95.       cde($db);
  96.  
  97.       $db->query ('insert into zshop(product, rating)
  98.              select link, rating from bookm_tmp a left outer join zstat b
  99.                  on a.id=b.pic_id');
  100.  
  101.       cde($db);
  102.    }
  103.    
  104. }
  105. //---------------------------------
  106. function add_to_basket($id) {
  107.  
  108.    if (!isset($_SESSION['basket']))
  109.       $_SESSION['basket'] = array();
  110.  
  111.    $_SESSION['basket'][] = $id;
  112.    
  113. }
  114. //---------------------------------
  115. function show_page() {
  116.  
  117.    
  118.    global $db;
  119.    $perpage = 10;
  120.    $page = isset($_GET['page']) ? $_GET['page'] : 1;
  121.    $start = ($page-1)*$perpage;
  122.    
  123.    $rez = $db->query('select count(*) from zshop');
  124.    cde($db);
  125.    $pages = $rez->fetch_row();
  126.    $pages = ceil($pages[0]/$perpage);
  127.  
  128.    ob_start();
  129.     echo '<br/><br/>';
  130.    for ($i=0; $i<$pages; $i++) {
  131.        echo str_repeat('&nbsp;',3);
  132.        if ($i+1==$page) {
  133.           echo ($i+1);
  134.        } else {
  135.             echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($i+1).'">'.($i+1).'</a>';
  136.        }
  137.        if (($i+1)%20==0)
  138.           echo '<br/>';
  139.    }
  140.    echo '<br/><br/>';
  141.  
  142.    $nav = ob_get_clean();
  143.  
  144.    echo (isset($_SESSION['basket']) && (count($_SESSION['basket'])>0)) ?
  145.          '<a href="'.$_SERVER['PHP_SELF'].'?show_basket">'.
  146.          count($_SESSION['basket']). ' items in the basket</a><br/>' : 'basket is empty<br/>';
  147.  
  148.    echo $nav;
  149.  
  150.    $stmt = $db->prepare('select id, product, rating from zshop order by id limit ?,?');
  151.    cde($db);
  152.    $stmt->bind_param('dd',$start,$perpage);
  153.  
  154.    $stmt->execute();
  155.    $stmt->bind_result($id, $product, $rating);
  156.  
  157.    echo '<table>';
  158.    $i = 0;
  159.    while ($stmt->fetch()) {
  160.       if ($i%3==0)
  161.          echo '<tr>';
  162.  
  163.        $inf = $_SERVER['REQUEST_URI'];
  164.        preg_match ('/(?<=http).*?(https?.*)/', $product, $match);
  165.        $link  = 'http://freedomplace.ru/diff/php_dbg/loader.php?thumb='.$match[1];
  166.        
  167.        echo '<td><a href="'.$inf.((strpos($inf,'?')!==false)?'&':'?').'add_to_basket='.
  168.              $id.'"><img src="'.$link.'" /></a><h2>Rating: '.$rating.'</h2></td>';
  169.  
  170.       if (($i+1)%3==0)
  171.          echo '</tr>';
  172.       $i++;
  173.    }
  174.    
  175. }
  176. //---------------------------------
  177. function show_basket() {
  178.    
  179.    $catlink = (strpos($_SERVER['HTTP_REFERER'], $_SERVER['PHP_SELF'])!==false)
  180.                && (strpos(strstr($_SERVER['HTTP_REFERER'],'?'),'checkout')===false)?
  181.                $_SERVER['HTTP_REFERER']: $_SERVER['PHP_SELF'];
  182.  
  183.    $inf = parse_url($catlink);
  184.  
  185.    $catlink = $inf['scheme'].'://'.$inf['host'].$inf['path'];
  186.  
  187.    if (isset($inf['query'])) {
  188.  
  189.       parse_str($inf['query'], $zq);
  190.       $f = create_function('$a','return $a==\'page\';');
  191.       $zq = array_flip(array_filter(array_flip($zq), $f));
  192.  
  193.      $catlink .= '?'.http_build_query($zq);
  194.  
  195.    }
  196.  
  197.    
  198.  
  199.    $catlink = '<a href="'.$catlink.'">back to catalog</a>';
  200.  
  201.    if ((empty($_SESSION['basket'])) || (count($_SESSION['basket'])==0)) {
  202.       echo 'basket empty<br/>';
  203.       echo $catlink.'<br/>';
  204.       return;
  205.    }
  206.  
  207.    echo $catlink.'<br/>';
  208.  
  209.    global $db;
  210.    $rez = $db->query('select id,product,rating from zshop where id in ('.
  211.                 implode(',', $_SESSION['basket']).')');
  212.  
  213.    cde($db);
  214.  
  215.    while ($row = $rez->fetch_assoc()) {
  216.  
  217.  
  218.       preg_match ('/(?<=http).*?(https?.*)/', $row['product'], $match);
  219.        $link  = 'http://freedomplace.ru/diff/php_dbg/loader.php?thumb='.$match[1];
  220.  
  221.       echo '<div><img src="'.$link.'" /><h2>Rating: '.$row['rating'].'</h2>';
  222.       echo '<a href="'.$_SERVER['PHP_SELF'].'?delete_from_basket='.$row['id'].
  223.               '">delete from basket</a></div>';
  224.    }
  225.  
  226.    $rez->free();
  227.    echo '<h2><a href="'.$_SERVER['PHP_SELF'].'?checkout" />checkout</a></h2>';
  228.      
  229. }
  230. //---------------------------------
  231. function delete_from_basket($id) {
  232.  
  233.    $key  = array_search ( $id, $_SESSION['basket']);
  234.    if ($key!==false)
  235.       unset($_SESSION['basket'][$key]);
  236. }
  237. //---------------------------------
  238. function checkout() {
  239.  
  240.    global $db;
  241.    $rez = $db->query ('select id, product, rating from zshop where
  242.                     id in ('.implode(',',$_SESSION['basket']).')');
  243.  
  244.    cde($db);
  245.  
  246.    if (!file_exists('./checks') || !is_dir('./checks'))
  247.       mkdir('checks');
  248.  
  249.    $fname = './checks/check_'.date('d_m_Y_H_i_s_').rand(1,10000).'.txt';
  250.    $cfile = fopen($fname, 'w');
  251.    fwrite ($cfile, "items list\n\r");
  252.    fwrite ($cfile, str_repeat("\n\r",3));
  253.  
  254.    while ($row = $rez->fetch_object()) {
  255.       fwrite($cfile, $row->id.' '.$row->product.' '.$row->rating."\n\r");
  256.    }
  257.  
  258.    fclose($cfile);
  259.  
  260.    header('Content-type: text/plain; charset=windows-1251');
  261.    include($fname);
  262. }
  263.  
  264. ?>
  265.  
  266.  
  267. <?php
  268. //---------------------------------------------------------------------------
  269.  
  270. $db = new mysqli('','','','');
  271.  
  272. $rez = $db->query('select a.* from bookm_tmp a where exists
  273.    (select count(*) from bookm_tmp b where a.link=b.link having count(*)>1)');
  274.  
  275.  echo 'count: '.$rez->num_rows.'<br/>';
  276.  
  277.  
  278.  
  279.    $rez = $db->query('select * from bookm_tmp a where exists
  280.           (select count(*) from bookm_tmp b where a.link=b.link having count(*)>1)
  281.  
  282.          and id <> (select min(id) from bookm_tmp b where a.link=b.link)
  283. ');
  284.  
  285.   if ($db->errno!=0)
  286.      echo 'error: '.$db->error.'<br/>';
  287.  
  288.   $ids = array();
  289.   while ($row = $rez->fetch_array(MYSQLI_ASSOC)) {
  290.       $ids[] = $row['id'];
  291.   }
  292.   $rez->free();
  293.  
  294.   echo '<br/>';
  295.  
  296.   $db->query('delete from bookm_tmp where id in ('.implode(',',$ids).')');
  297.  
  298.   if ($db->errno!=0)
  299.      echo 'db error: '.$db->error.'<br/>';
  300.  
  301.   echo 'affected: '.$db->affected_rows.'<br/>';
  302.   echo 'last sql: '.$db->info.'<br/>';
  303.  
  304.  
  305.  
  306. ?>
  307.  
  308. <?php
  309. //---------------------------------------------------------------------------
  310. function cde() {
  311.    global $db;
  312.    if ($db->errno!=0) {
  313.       throw new Exception ('db error: '.$db->error);
  314.    }
  315. }
  316.  
  317. $perpage = 10;
  318.  
  319. $db = new mysqli('','','','');
  320.  
  321.  
  322. if (isset($_GET['rate'])) {
  323.    rate($_GET['rate']);
  324.    exit();
  325. }
  326.  
  327. function rate($id) {
  328.  
  329.    global $db;
  330.    $rez = $db->query('select * from zstat where pic_id='.
  331.         $db->real_escape_string($id));
  332.  
  333.    cde();
  334.  
  335.    if ($rez->num_rows==0) {
  336.       $stmt = $db->prepare('insert into zstat(pic_id,rating) values(?,5)');
  337.    } else {
  338.       $stmt = $db->prepare('update zstat set rating=rating+5 where pic_id=?');
  339.    }
  340.    cde();
  341.  
  342.    $rez->free();
  343.  
  344.    $stmt->bind_param('d',$id);
  345.    $inf = $stmt->execute();
  346.  
  347.    'rating updated: '.$inf;
  348.  
  349.    $stmt->close();
  350.  
  351.    $rez = $db->query('select link, rating from bookm_tmp a, zstat b
  352.          where a.id=b.pic_id and a.id='.$db->real_escape_string($id));
  353.  
  354.    $row = $rez->fetch_object();
  355.    $rez->free();
  356.    
  357.    echo '<img src="'.$row->link.'" />';
  358.    echo '<h2>rating: '.$row->rating.'</h2>';
  359. }
  360.  
  361.  
  362.  
  363.  
  364. $page = isset($_GET['page']) ? $_GET['page'] : 1;
  365.  
  366. $start = ($page-1)*$perpage;
  367.  
  368. $rez = $db->query('select count(*) from bookm_tmp');
  369. cde();
  370. $pages = $rez->fetch_row();
  371. $pages = ceil($pages[0]/$perpage);
  372. $rez->free();
  373.  
  374.    ob_start();
  375.   for ($i=0; $i<$pages; $i++) {
  376.      echo str_repeat('&nbsp;',3);
  377.      if ($i+1==$page) {
  378.         echo ($i+1);
  379.      } else {
  380.         echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($i+1).'">'.($i+1).'</a>';
  381.      }
  382.      if (($i+1)%20==0)
  383.         echo '<br/>';
  384.      
  385.   }
  386.   $nav = ob_get_clean();
  387.  
  388.  
  389. echo $nav.'<br/><br/>';
  390.  
  391. $stmt = $db->prepare('select a.id,link,rating from bookm_tmp a left outer join zstat b
  392.           on a.id=b.pic_id order by a.id limit ?,?');
  393. cde();
  394.  
  395. $stmt->bind_param('dd',$start,$perpage);
  396. $stmt->execute();
  397.  
  398. $stmt->bind_result($id,$link,$rating);
  399.  
  400. while( $stmt->fetch()) {
  401.  
  402.    preg_match ('/(?<=http).*?(https?.*)/', $link, $match);
  403.  
  404.    echo '<div style="width:400px;height:450px;float:left;"><a href="'.$_SERVER['PHP_SELF'].'?rate='.$id.'" target="_blank">';
  405.    echo '<img src="http://freedomplace.ru/diff/php_dbg/loader.php?thumb='.
  406.             $match[1].'" /></a><h2>rating: '.$rating.'</h2></div>';
  407.  
  408. }
  409.  
  410. $stmt->close();
  411.  
  412.  
  413. echo '<br/><br/>'.$nav.'<br/><br/>';
  414.  
  415.  
  416. ?>
  417.  
  418. <?php
  419. //---------------------------------------------------------------------------
  420. function cde() {
  421.    global $db;
  422.    if ($db->errno!=0) {
  423.       throw new Exception ('db error: '.$db->error);
  424.    }
  425. }
  426.  
  427. $db = new mysqli('','','','');
  428.  
  429.  
  430. $rez = $db->query('show tables like \'bookm_tmp\'');
  431.  
  432. cde();
  433.  
  434. if ($rez->num_rows==0) {
  435.    $db->query('create table bookm_tmp( id int(11) not null auto_increment, '.
  436.         ' link varchar(500), pubdate datetime, primary key(`id`))');
  437.  
  438.    cde();
  439.    echo 'created table bookm_tmp<br/>';
  440. }
  441.  
  442. $rez->free();
  443.  
  444. $rez = $db->query ('select link from bookmarksz');
  445. cde();
  446.  
  447. $links = array();
  448. while( $row=$rez->fetch_object()) {
  449.  
  450.    if (strpos($row->link,'dofiga')!==false) {
  451.       $links[] = $row->link;
  452.    }
  453. }
  454.  
  455. $rez->free();
  456.  
  457.    $stmt = $db->prepare('insert into bookm_tmp(link) values(?)');
  458.    cde();
  459.  
  460. foreach ($links as $link) {
  461.  
  462.    $stmt->bind_param('s',$link);
  463.    $stmt->execute();
  464.    echo $stmt->insert_id.' - '.$link.'<br/>';
  465.  
  466. }
  467.  
  468. $stmt->close();
  469.  
  470. $rez = $db->query('select * from bookm_tmp');
  471. cde();
  472.  
  473. echo '<table><tr>';
  474. while ($fld = $rez->fetch_field()) {
  475.    echo '<th>'.$fld->name.'</th>';
  476. }
  477. echo '</tr>';
  478.  
  479. while ($row = $rez->fetch_row()) {
  480.    echo '<tr>';
  481.    for ($i=0; $i<count($row); $i++) {
  482.       echo '<td>'.$row[$i].'</td>';
  483.    }
  484.    echo '</tr>';
  485. }
  486. echo '</table>';
  487. $rez->free();
  488.  
  489.  
  490. ?>
  491.  
  492. <?php
  493. //---------------------------------------------------------------------------
  494. function check_err($db) {
  495.    if ($db->errno!=0)
  496.       throw new Exception('db error: '.$db->error);
  497. }
  498.  
  499. $db = new mysqli ('','','','');
  500.  
  501. if (mysqli_connect_errno()) {
  502.    throw new Exception ('connect error: '.mysqli_connect_error());
  503. }
  504.  
  505. $rez =  $db->query('select link from bookmarksz');
  506. check_err($db);
  507.  
  508. $links = array();
  509. $counts = array();
  510. while ($row = $rez->fetch_assoc()) {
  511.  
  512.    $key = array_search($row['link'], $links);
  513.    if ($key===false)
  514.       $links[] = $row['link'];
  515.    else {
  516.       $counts[$key] = (isset($counts[$key])) ? $counts[$key]+1 : 2;
  517.    }
  518. }
  519.  
  520. $rez->free();
  521.  
  522. $arr4 = array_map('hosts', $links);
  523. $arr4 = array_count_values($arr4);
  524.  
  525. $arr5 = array_map('getarr', array_keys($arr4), array_values($arr4));
  526.  
  527. function getarr($a,$b) {
  528.    return array('host'=>$a, 'count'=>$b);
  529. }
  530.  
  531. //echo '<pre>'.print_r($arr5,true).'</pre>';
  532.  
  533. function hosts($a) {
  534.    return  str_replace(strstr(substr(strstr($a,'://'),3),'/'), '', $a);
  535. }
  536.  
  537. foreach ($arr5 as &$el) {
  538.    echo $el['host'].' '.$el['count'].'<br/>';
  539.  
  540.    foreach ($links as $link) {
  541.       if (substr($link, 0, strlen($el['host']))==$el['host']) {
  542.          if (empty($el['addr']))
  543.             $el['addr']=array();
  544.  
  545.          $el['addr'][] = $link;
  546.       }
  547.    }
  548. }
  549.  
  550. //echo '<pre>'.print_r($arr5,true).'</pre>';
  551.  
  552. foreach ($arr5 as $key=>$el) {
  553.    if (strpos($el['host'],'freedomplace')!==false) {
  554.       $arr5 = $el['addr'];
  555.       break;
  556.    }
  557.      
  558. }
  559.  
  560. array_walk($arr5,'zzu');
  561.  
  562. function zzu(&$a) {
  563.  
  564.    preg_match('/(?<=http).*?(https?.*)/',$a, $match);
  565.    $a = urldecode($match[1]);
  566. }
  567.  
  568. echo '<pre>'.print_r($arr5,true).'</pre>';
  569.  
  570.  
  571. ?>
  572.  
  573. <?php
  574. //---------------------------------------------------------------------------
  575. define ('EPP',3);
  576.  
  577. check_base();
  578.  
  579.    if (isset($_POST['submit']))
  580.       save_vals();
  581.  
  582. show_entries();
  583.  
  584.  
  585. show_form();
  586.  
  587. function check_base() {
  588.    global $db;
  589.    error_reporting(E_ERROR);
  590.    $db = new mysqli('','','','');
  591.    error_reporting(E_ALL);
  592.    if (mysqli_connect_errno())
  593.       throw new Exception ('connect error: '.mysqli_connect_error());
  594.  
  595.    $rez = $db->query ("show tables like 'gbookz'");
  596.  
  597.    if ($rez->num_rows==0) {
  598.       $db->query('create table gbookz (id int(11) not null auto_increment,'.
  599.            'username varchar(20), message varchar(200), pubdate datetime, '.
  600.            ' primary key(`id`))');
  601.  
  602.       if ($db->errno!=0) {
  603.           echo $db->error;
  604.           exit();
  605.          }
  606.  
  607.  
  608.     echo 'created gbookz table<br/>';
  609.    }
  610.    $rez->free();
  611.  
  612. }
  613.  
  614. function save_vals() {
  615.  
  616.    global $db;
  617.  
  618.    $stmt = $db->prepare('insert into gbookz(username,message,pubdate) '.
  619.             'values(?,?,?)');
  620.  
  621.    $stmt->bind_param('sss', $_POST['username'], $_POST['message'],
  622.       date('Y-m-d H:i:s'));
  623.  
  624.    $stmt->execute();
  625.  
  626.    if ($stmt->errno!=0) {
  627.       throw new Exception ('db error: '.$stmt->error);
  628.    }
  629.  
  630.    echo 'record saved with id='.$stmt->insert_id.'<br/>';
  631. }
  632.  
  633. function show_entries() {
  634.  
  635.    global $db;
  636.  
  637.    $page = (isset($_GET['page'])) ? $_GET['page'] : 1;
  638.  
  639.    $rez = $db->query('select count(*) from gbookz');
  640.  
  641.    $num_rows = $rez->fetch_array(MYSQLI_NUM);
  642.    $pages = ceil($num_rows[0]/EPP);
  643.  
  644.    $rez->free();
  645.  
  646.    ob_start();
  647.    for ($i=0; $i<$pages; $i++) {
  648.       echo str_repeat('&nbsp',3);
  649.       if ($i+1==$page)
  650.          echo ($i+1);
  651.       else
  652.          echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($i+1).'">'.($i+1).'</a>';
  653.  
  654.       if (($i+1)%10==0)
  655.          echo '<br/>';
  656.    }
  657.    $nav = ob_get_clean();
  658.  
  659.  
  660.    $stmt = $db->prepare('select id,username,message,pubdate from gbookz order by pubdate desc '.
  661.        'limit ?,?');
  662.  
  663.    $start = ($page-1)*EPP;
  664.    $num = EPP;
  665.    $stmt->bind_param('dd', $start, $num);
  666.  
  667.    $stmt->execute();
  668.    $stmt->bind_result($id, $username, $message, $pubdate);
  669.    while ($stmt->fetch()) {
  670.      
  671.        echo '<h2>'.$username.'</h2>';
  672.        echo '<p>'.$message.'</p>';
  673.        echo '<p>'.date('d.m.Y H:i',strtotime($pubdate)).'</p>';
  674.    }
  675.  
  676.    $stmt->close();
  677.    echo $nav;
  678.    
  679. }
  680.  
  681. function show_form() {
  682.    ?>
  683.  
  684.   <form action="<?php echo $_SERVER['REQUEST_URI'] ?>" method="post"
  685.        enctype="application/www-form-urlencoded">
  686.  
  687.    <p>input username <input type="text" name="username"></p>
  688.    input message<br/> <textarea name="message"></textarea>
  689.      <br/><input type="submit" name="submit" value="send" />
  690.   </form>
  691.  
  692. <?php
  693. }
  694.  
  695. ?>
  696.  
  697. <?php
  698. //---------------------------------------------------------------------------
  699. define('PERPAGE',10);
  700.  
  701. $page = (isset($_GET['page'])) ? $_GET['page'] : 1;
  702.  
  703. $db = new mysqli ('','','','');
  704.  
  705.   if (mysqli_connect_errno()) {
  706.      throw new Exception ('db connect error: '.mysqli_connect_error());
  707.   }
  708.  
  709.   $start = ($page-1)*PERPAGE;
  710.  
  711.   $rez = $db->query('select count(*) from bookmarksz');
  712.  
  713.   $cnt = $rez->fetch_row();
  714.   $cnt = ceil($cnt[0]/PERPAGE);
  715.  
  716.   $rez->free();
  717.  
  718.   ob_start();
  719.  
  720.   for ($i=0; $i<$cnt; $i++) {
  721.      if ($i+1==$page)
  722.         echo '<span>'.($i+1).'</span>';
  723.      else    
  724.         echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($i+1).'">'.($i+1).'</a>';
  725.   }
  726.  
  727.   $nav = ob_get_clean();
  728.  
  729.   $nav = str_replace('<a',str_repeat('&',3).'<a', $nav);
  730.   $nav = str_replace('<s',str_repeat('&',3).'<s', $nav);
  731.   $nav = explode('&&&',$nav);
  732.   $nav = array_chunk($nav, 30);
  733.  
  734.  
  735.   foreach ($nav as $key=>$el) {
  736.      $nav[$key] = implode(str_repeat('&nbsp;',3), $el);
  737.   }
  738.   $nav = implode('<br/>',$nav);
  739.  
  740.   echo $nav;
  741.   echo '<br/><br/>';
  742.  
  743.   $rez = $db->query('select * from bookmarksz LIMIT '.$start.','.PERPAGE);
  744.  
  745.  
  746.   if ($db->errno!=0)
  747.      throw new Exception ('db error:'. $db->error);
  748.  
  749.  
  750.  
  751.  
  752.  
  753.   while ($z = $rez->fetch_array(MYSQLI_NUM)) {
  754.    
  755.      for ($i=0; $i<count($z); $i++) {
  756.          if (strpos($z[$i],'http')!==false) {
  757.             echo '<img src="'.$z[$i].'" />';
  758.          }
  759.      }
  760.      
  761.   }
  762.   $rez->free();
  763.   $db->close();
  764.  
  765.   echo '<br/><br/>'.$nav;
  766.  
  767. ?>
  768.  
  769. <?php
  770. //---------------------------------------------------------------------------
  771.    $bases = array(
  772.      ...
  773.  
  774. );
  775.  
  776.    foreach ($bases as $el) {
  777.  
  778.       list($host,$user,$pass, $basename) = $el;
  779.  
  780.       $db = new mysqli($host,$user,$pass,$basename);
  781.       get_base_info($db, $basename);
  782.    }
  783.  
  784.  
  785.  
  786.  
  787. function get_base_info($db, $basename) {
  788.  
  789.    $rez = $db->query('select table_name, table_rows, update_time from information_schema.tables '.
  790.     'where table_schema=\''.$basename.'\'');
  791.  
  792.    if ($db->errno!=0)
  793.       throw new Exception ('database error: '. $db->error);
  794.  
  795.  
  796.    echo '<h2>'.$basename.'</h2>';
  797.  
  798.    echo '<table><tr>';
  799.  
  800.    while ($row = $rez->fetch_field()) {
  801.        echo '<th>'.$row->name.'</th>';
  802.    }
  803.    echo '</tr>';
  804.  
  805.    while ($row = $rez->fetch_array(MYSQLI_NUM)) {
  806.       echo '<tr>';
  807.       for ($i=0; $i<count($row); $i++) {
  808.           echo '<td>'.$row[$i].'</td>';
  809.       }
  810.  
  811.       echo '</tr>';
  812.    }
  813.  
  814.  
  815.    echo '</table>';
  816. }
  817.  
  818. ?>
  819.  
  820. <?php
  821. //---------------------------------------------------------------------------
  822. $word = (isset($_GET['word'])) ? $_GET['word'] : 'array_udiff';
  823.  
  824.  
  825. $addr = array(...);
  826.  
  827. $s = '';
  828. foreach ($addr as $el) {
  829.    $s.= file_get_contents($el);
  830. }
  831.  
  832. $arr = preg_split('/<h2>.*?<\/h2>/', $s);
  833.  
  834.   preg_match_all('/<h2>(.*?)<\/h2>/ims', $s, $arrt);
  835.  
  836.  $z = array_search('zzz.php', $arrt[1]);
  837.  
  838.  unset($arrt[1][$z]);
  839.  unset($arrt[0][$z]);
  840.  unset($arr[$z]);
  841.  
  842. ?>
  843.  
  844. <html><head>
  845.    <script type="text/javascript" src="jquery.min.js"></script>
  846.  
  847.  
  848.    <script type="text/javascript">
  849.  
  850.    $(document).ready (
  851.       function () {
  852.  
  853.     $('pre').css('display','none');
  854.  
  855.     $('h2').css('cursor','pointer').click (
  856.         function() {
  857.             var _el = $(this);
  858.             var hid = _el.next().css('display')=='none';
  859.             $('pre').slideUp('slow').queue(
  860.              function() {
  861.               if (hid)
  862.                  _el.next().slideDown('slow');
  863.              $(this).dequeue();
  864.              
  865.              } )
  866.          
  867.         }
  868.     )
  869.      }
  870.    )
  871.  
  872.    </script>
  873.  
  874. </head><body>
  875.  
  876.  
  877. <?php
  878.  
  879. foreach ($arr as $key=>$el) {
  880.    if (strpos($el,$word)!==false) {
  881.       echo $arrt[0][$key-1];
  882.       echo str_replace($word, '<span style="background:#ffa;">'.$word.'</span>', $el);
  883.    }
  884. }
  885.  
  886. ?>
  887. </body></html>
  888.  
  889. <?php
  890. //---------------------------------------------------------------------------
  891. ini_set('display_errors',1);
  892. error_reporting(E_ALL);
  893.  
  894. $dir  = $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['REQUEST_URI']);
  895.  
  896.    $z = scandir($dir);
  897.  
  898.    while (list($key,$val)=each($z)) {
  899.        $z[$key] = $dir.'/'.$val;
  900.    }
  901.  
  902.    $z = array_values(array_filter($z,'uu'));
  903.  
  904.    uasort($z, 'uuu');
  905.  
  906.    foreach ($z as $el) {
  907.       echo '<h2>'.substr(strrchr($el,'/'),1).' '.date('H:i',filemtime($el)).'</h2>';
  908.       $s = file_get_contents($el);
  909.       echo '<pre>'.htmlentities($s).'</pre>';
  910.    }
  911.  
  912. function uu($a) {
  913.  
  914.   $dt = strtotime(date('d.m.Y'))-3*24*3600;
  915.  
  916.    if (substr($a,-4)!='.php')
  917.       return false;
  918.  
  919.    if (filemtime($a)<$dt)
  920.       return false;
  921.  
  922.    return true;
  923. }
  924.  
  925. function uuu($a,$b) {
  926.  
  927.    return filemtime($b)-filemtime($a);
  928. }
  929.  
  930.  
  931. <?php
  932.  
  933. //---------------------------------------------------------------------------
  934.    
  935.    $dir = opendir($_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['SCRIPT_NAME']));
  936.  
  937.    while ($f = readdir($dir)) {
  938.      
  939.       if (substr($f,-4)!='.php')
  940.          continue;
  941.  
  942.       $s = file_get_contents(dirname($_SERVER['SCRIPT_FILENAME']).'/'.$f);
  943.  
  944.       $s = strtr($s, '()','  ');
  945.       $arr = explode(' ',$s);
  946.  
  947.       $arr = array_unique(array_filter(array_filter($arr, 'zz'),'trim'));
  948.       sort($arr);
  949.  
  950.       echo '<h2>'.$f.'</h2>'.implode('<br/>',$arr);
  951.  
  952.    }
  953.  
  954.  
  955.   function zz($a) {
  956.      if ((substr($a,0,1)=='$') || (strtolower($a)!=$a) || (strtr($a, '\'",.;:{}+-_=/$[]<>?&',
  957. '                    ')!=$a))
  958.         return false;
  959.  
  960.  
  961.      if (strtr($a,'0123456789','          ')!=$a)
  962.         return false;
  963.  
  964.      return true;
  965.   }
  966.  
  967.  
  968.  
  969. ?>
  970.  
  971. <?php
  972.  
  973. //---------------------------------------------------------------------------
  974.    $files = scandir($_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF']));
  975.  
  976.    $tm4 = strtotime(date('Y-m-d', time()));
  977.  
  978.    while (list($key,$val) = each($files)) {
  979.  
  980.       if ((strpos($val,'logfile')===0) && (substr($val,-4)=='.txt')) {
  981.          unlink ('./'.$val);
  982.       }
  983.  
  984.       $tm = filemtime('./'.$val);
  985.      
  986.       if ($tm<$tm4) {
  987.          unset ($files[$key]);
  988.          continue;
  989.       }
  990.  
  991.       $files[$key] .= ' '.$tm;
  992.    }
  993.  
  994.  
  995.    $arrtm = array_map('zz', $files);
  996.  
  997.    function zz($a) {
  998.       return intval(trim(strstr($a,' ')));
  999.    }
  1000.  
  1001.    array_multisort($arrtm, SORT_DESC, SORT_NUMERIC, $files, SORT_ASC, SORT_STRING);
  1002.  
  1003.  
  1004.  
  1005.    foreach ($files as $f) {
  1006.       echo '<h2>'.date('d.m.Y H:i:s',intval(trim(strstr($f,' ')))).' '.
  1007.       strrev(trim(strstr(strrev($f),' ')))
  1008.            .'</h2><pre>'.htmlentities(file_get_contents('./'.strrev(trim(strstr(strrev($f),' '))))).'</pre>';
  1009.    }
  1010.  
  1011.  
  1012. ?>
  1013.  
  1014. <?php
  1015. //---------------------------------------------------------------------------
  1016.  
  1017. if (isset($_GET['showphp'])) {
  1018.    echo '<pre>'.htmlentities(file_get_contents($_GET['showphp'])).'</pre>';
  1019.    exit();
  1020. }
  1021.  
  1022.  
  1023. $dir = opendir($_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['REQUEST_URI']));
  1024.  
  1025. $fl = array();
  1026. $fld = array();
  1027.  
  1028. while ($f = readdir($dir)) {
  1029.    if (substr($f,-4)!='.php')
  1030.       continue;
  1031.  
  1032.    $dt = filemtime($f);
  1033.  
  1034.    $fl[] = array($f, $dt);
  1035.    $fld[] = $dt;
  1036.  
  1037. }
  1038.  
  1039. array_multisort( $fld, SORT_DESC, SORT_NUMERIC, $fl, SORT_ASC);
  1040.  
  1041.  foreach ($fl as $el) {
  1042.     echo '<a href="'.$_SERVER['PHP_SELF'].'?showphp='.
  1043.       urlencode(dirname($_SERVER['SCRIPT_FILENAME']).'/'.$el[0]).'" target="_blank">'.
  1044.        dirname($_SERVER['SCRIPT_FILENAME']).'/'.$el[0].' '.date('d.m.Y H:i:s',$el[1]).'<br/>';
  1045. }
  1046.  
  1047. ?>
  1048.  
  1049. <?php
  1050. //---------------------------------------------------------------------------
  1051.  
  1052.    $arr = scandir($_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['REQUEST_URI']));
  1053.  
  1054.    $arr = array_filter($arr, 'zz');
  1055.  
  1056.  
  1057.    while (list($a, $b) = each($arr)) {
  1058.       echo $b.'<br/>';
  1059.    }
  1060.  
  1061.    $arr5 = array_fill(0,count($arr), dirname($_SERVER['SCRIPT_FILENAME']).'/');
  1062.          
  1063.    $arr7 = array_combine(array_values($arr),$arr5);
  1064.  
  1065.     array_walk($arr7, 'uns');
  1066.  
  1067.    
  1068.  
  1069.  
  1070.    function uns($val, $key) {
  1071.      echo $val.$key.'<br/>';
  1072.      $s = $val.$key;
  1073.      unlink ($s);
  1074.    }
  1075.  
  1076.    function zz($a) {
  1077.  
  1078.       return preg_replace('/(logfile)([0-9_]*)(.txt)/i','$1$3',$a)=='logfile.txt';
  1079.    }
  1080.  
  1081. ?>
  1082.  
  1083. <?php
  1084. //---------------------------------------------------------------------------
  1085.  
  1086. define('WP_USE_THEMES', false);
  1087. require('../wp-load.php');
  1088. header('Content-type: text/html; charset=utf-8');
  1089.  
  1090. ini_set('show_errors',true);
  1091.  
  1092. echo realpath('..').'<br/>'.$_SERVER['DOCUMENT_ROOT'];
  1093.  
  1094. $zz = 'logfile.txt';
  1095.  
  1096. $logf = dirname($_SERVER['SCRIPT_FILENAME']).'/'. strrev(ltrim(strstr(strrev($zz),'.'),'.')).
  1097.           date('_d_m_Y_H_i_s_').rand(1,1000).strstr($zz,'.');
  1098.  
  1099. echo $logf.'<br/>';
  1100.  
  1101. $log_url = 'http://'.$_SERVER['SERVER_NAME'].strtr($logf, array($_SERVER['DOCUMENT_ROOT']=>''));
  1102. echo $log_url;
  1103.  
  1104.  
  1105.  
  1106. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement