Advertisement
ShadyPL

odnajdywanie i dodawanie słówek | find and add words (PHP)

Jun 2nd, 2013
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.64 KB | None | 0 0
  1. <html>
  2.     <head>
  3.         <title>Find your words</title>
  4.         <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  5.     </head>
  6.  
  7. <body>
  8.  
  9. <?php
  10. ////////////////////////////////////////////////////////////
  11. //////// script created by Shady on GNU/GPL license ////////
  12. ////////  gg 15530223 | mail izzypjchamp@gmail.com  ////////
  13. ////////////////////////////////////////////////////////////
  14. /***********************************************************
  15.  
  16. CREATE TABLE IF NOT EXISTS `results` (
  17.   `find` varchar(50) COLLATE utf8_polish_ci NOT NULL,
  18.   `value` varchar(50) COLLATE utf8_polish_ci NOT NULL,
  19.   PRIMARY KEY (`find`)
  20. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
  21.  
  22. INSERT INTO `results` (`find`, `value`) VALUES
  23. ('from', 'to'),
  24. ('to2', 'from2');
  25.  
  26. ***********************************************************/
  27.  
  28. try {
  29.  
  30.     $db = new PDO('mysql:host=localhost;dbname=table_name;charset=utf8', 'user', 'pass',
  31.     array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
  32.     $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  33.  
  34.     if (isset($_GET['add'])) {
  35.  
  36.         if (isset($_POST['new'])) {
  37.             $new = explode("\n", $_POST['new']);
  38.  
  39.             $i = 0;
  40.             $max = sizeof($new);
  41.            
  42.             while ($i < $max) {
  43.                 $record = explode('-', $new[$i]);
  44.  
  45.                  $db->exec("INSERT INTO `results` SET `find` = '".trim($record[0])."', `value` = '".trim($record[1])."'");
  46.  
  47.                 $i++;
  48.             }
  49.  
  50.             echo 'poprawnie dodano '.$max.' nowych rekordów (:<br/><br/>';
  51.             unset($_POST);
  52.         }
  53.  
  54.         echo '<form action="#" method="POST">
  55.                 <textarea name="new"></textarea>
  56.                 <input type="submit" value="Add" />
  57.             </form>';  
  58.  
  59.     } else {
  60.  
  61.         if (isset($_POST['find'])) {
  62.             $query = $db -> prepare("SELECT `find`, `value` FROM `results` WHERE `find` = :find OR `value` = :find LIMIT 1");
  63.                 $query -> bindValue(':find', trim($_POST['find']), PDO::PARAM_STR);
  64.             $query -> execute();
  65.                 $result = $query -> fetch();
  66.             $query -> closeCursor();
  67.  
  68.             echo $result['value'] ? 'wynik: '.($_POST['find'] == $result['value'] ?
  69.                     $result['find'].'<br/><br/>' :
  70.                     $result['value']).'<br/><br/>'
  71.                 : 'nie zaleziono pasujacego zamiennika<br/><br/>';
  72.         }
  73.  
  74.         echo '<form action="#" method="POST">
  75.                 <input type="text" name="find" />
  76.                 <input type="submit" value="Go" />
  77.             </form>';
  78.  
  79.     }
  80.  
  81. } catch (PDOException $error) {
  82.     echo 'db error: '.$error->getMessage();
  83. }
  84.  
  85. echo isset($_GET['add']) ?
  86.     '<a href="words.php" style="color: #000; text-decoration: none">- powrót do wyszukiwania' :
  87.     '<a href="?add=true" style="color: #000; text-decoration: none">+ dodaj nowe slówka</a>';
  88. ?>
  89.  
  90. </body>
  91. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement