За последние 24 часа нас посетили 26782 программиста и 1819 роботов. Сейчас ищут 888 программистов ...

мой скрипт

Тема в разделе "Прочее", создана пользователем malemail2, 12 май 2008.

  1. malemail2

    malemail2 Активный пользователь

    С нами с:
    9 апр 2008
    Сообщения:
    10
    Симпатии:
    0
    add.php
    PHP:
    1.  
    2. <?php
    3.  
    4. is_file('core.php')? require_once 'core.php': die('File core.php not found');
    5.  
    6. $db_handle = mysql_connect($db_host, $db_user, $db_pass);
    7. mysql_select_db($db_name);
    8.  
    9. if (count($_GET) == 0)
    10. {
    11.     echo 'Add category<br />
    12. <form action=?add=category method=POST>
    13. <input type=text name=name /> <input type=submit value=add />
    14. </form>';
    15.     $result = mysql_query("SELECT * FROM $cat_tbl");
    16.     if (mysql_num_rows($result) > 0)
    17.     {
    18.         echo "Add article<br />
    19. <form action=?add=article method=POST>
    20. <input type=text name=hdr /><br />
    21. <textarea cols=50 rows=15 name=cont></textarea><br />
    22. <select name=catid>\n";
    23.         while ($row = mysql_fetch_array($result, MYSQL_NUM))
    24.             echo  "<option value=$row[0]>$row[1]</option>\n";
    25.         echo '</select> <input type=submit value=add /></form>';
    26.     }
    27. }
    28. elseif (check_get(array('add')))
    29. {
    30.     switch ($_GET[add])
    31.     {
    32.         case 'article':
    33.             list($pmsec, $psec) = explode(' ', microtime());
    34.             $ptime = $psec.substr($pmsec, 1);
    35.             $date = date('j/n/Y'); 
    36.             mysql_query("INSERT INTO $story_tbl VALUES ($ptime, $_POST[catid], '$date', 0, '$_POST[hdr]', '$_POST[cont]')");
    37.             echo 'Article succesfully added';
    38.             break;
    39.         case 'category':
    40.             mysql_query("INSERT INTO $cat_tbl (name) VALUES ('$_POST[name]')");
    41.             echo 'Category succesfully added';
    42.     }
    43. }
    44.  
    45. mysql_close($db_handle);
    46.  
    47. ?>
    48.  
    core.php
    PHP:
    1.  
    2. <?php
    3.  
    4. $db_host = 'localhost';
    5. $db_user = 'root';
    6. $db_pass = '';
    7. $db_name = 'mybase';
    8. $story_tbl = 'story';
    9. $cat_tbl = 'category';
    10.  
    11. function check_get($allows)
    12. {
    13.     global $_GET;
    14.     if(!is_array($allows) or (count($_GET) !== count($allows)))
    15.         return false;
    16.     if($allows !== array_keys($_GET))
    17.         return false;
    18.     return true;
    19. }
    20.  
    21. ?>
    22.  
    install.php
    PHP:
    1.  
    2. <?php
    3.  
    4. is_file('core.php')? require_once 'core.php': die('File core.php not found');
    5.  
    6. $db_handle = mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error());
    7. mysql_query("CREATE DATABASE IF NOT EXISTS $db_name") or die(mysql_error());
    8. mysql_select_db($db_name);
    9.  
    10. mysql_query("CREATE TABLE IF NOT EXISTS $story_tbl (
    11. id DECIMAL( 20, 8 ) UNSIGNED NOT NULL,
    12. catid TINYINT(3) UNSIGNED NOT NULL,
    13. date VARCHAR(10) NOT NULL,
    14. view MEDIUMINT( 8 ) UNSIGNED NOT NULL,
    15. header TINYTEXT NOT NULL,
    16. article LONGTEXT NOT NULL,
    17. PRIMARY KEY(id))") or die(mysql_error());
    18.  
    19. mysql_query("CREATE TABLE IF NOT EXISTS $cat_tbl (
    20. id TINYINT(3) UNSIGNED NOT NULL AUTO_INCREMENT,
    21. name TINYTEXT NOT NULL,
    22. PRIMARY KEY(id))") or die(mysql_error());
    23.  
    24. mysql_close($db_handle) or die(mysql_error());
    25.  
    26. echo 'Install was succesfull';
    27.  
    28. ?>
    29.  
    story.php
    PHP:
    1.  
    2. <?php
    3.  
    4. is_file('core.php')? require_once 'core.php': die('File core.php not found');
    5.  
    6. $db_handle = mysql_connect($db_host, $db_user, $db_pass);
    7. mysql_select_db($db_name);
    8.  
    9. if (check_get(array('catid', 'page')) && eregi('^[0-9]{1,3}$', $_GET[catid]) && eregi('^[0-9]{1,3}$', $_GET[page]))
    10. {
    11.     $result = mysql_query("SELECT * FROM $story_tbl WHERE catid=$_GET[catid]");
    12.     $page_num = round(mysql_num_rows($result)/10); $start_num = ($_GET[page]-1)*10;
    13.     $result = mysql_query("SELECT * FROM $story_tbl WHERE catid=$_GET[catid] ORDER BY id DESC LIMIT $start_num, 10");
    14.     while ($row = mysql_fetch_array($result, MYSQL_NUM))
    15.         echo  "<a href=?id=$row[0]>$row[4]</a><br />[$row[2] - $row[3]]<br /><br />";
    16.     if ($page_num > 1)
    17.     {
    18.         echo 'Pages: ';
    19.         for ($i = 1; $i <= $page_num; $i++)
    20.             echo ($_GET[page] == $i)? "$i ": "<a href=?catid=$_GET[catid]&page=$i>$i</a> ";
    21.     }
    22. }
    23. elseif (check_get(array('id')) && eregi('^[0-9]{10,12}.[0-9]{8}$', $_GET[id]))
    24. {
    25.     $result = mysql_query("SELECT * FROM $story_tbl WHERE id=$_GET[id]");
    26.     if (mysql_num_rows($result) == 1)
    27.     {
    28.         $row = mysql_fetch_array($result, MYSQL_NUM);
    29.         $row[3]++; mysql_query("UPDATE $story_tbl SET view=$row[3] WHERE id=$_GET[id]");
    30.         echo "$row[5]";
    31.     }
    32. }
    33.  
    34. mysql_close($db_handle);
    35.  
    36. ?>
    37.  
    вот написал скрипт который показывает статйи. add.php может видет только админ, т.е. можно поставит на дир. с паролем, по этому там филтрации нету. install.php запускаете один раз и удаляете. прошу посмотрите и выскажите свои мнения.
     
  2. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    на лицо полное, наплевательское отношение к стандартам кодинга, формтирования, HTML верстки и мыслительного процесса вообще.

    кто будет читать эту кашу?

    ИМХО: в помойку...
     
  3. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    я ж тебе сказал. ты не уважаешь нас. почему мы должны уважать тебя? выложил свой фарш и что? ждешь что тут все будут кипятком писать от твоей гениальности?
    недождесся...
    я давно уже кислотой мочусь. серной, а выдыхаю амфитамины...

    приведи код в порядок. напиши каменты. мож кто и писнет...
     
  4. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    malemail2
    еще раз так сделаешь - и бан навечно.
     
  5. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    440Hz, его посты потёр и будто сам с собой разговариваешь.
     
  6. malemail2

    malemail2 Активный пользователь

    С нами с:
    9 апр 2008
    Сообщения:
    10
    Симпатии:
    0
    440Hz
    Я же все исправил в чём дело????(bicbala!!!)
     
  7. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    что ты поправил? правь тут.
    там посмотрим.