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

    −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
    <?php $connection = mysqli_connect ('localhost','root','','userlistdb'); 
           
    
    
    // Проверка, если это общий клиент
    if (!empty($_SERVER['HTTP_CLIENT_IP'])){
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    //Is it a proxy address
    }elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }else{
      $ip=$_SERVER['REMOTE_ADDR'];
    }
    // Значение $ ip в этот момент будет выглядеть примерно так: "192.0.34.166"
    $ip = ip2long($ip);
    // Теперь $ ip будет выглядеть примерно так: 1073732954
    
    
    $sql = "INSERT INTO user(ip) VALUES('$ip')";
    $dbQuery = mysql_query($sql,$dbLink);
    
    
    
        $stmt = $dbh->prepare("INSERT INTO usertbl(ip) VALUES(ip)");
        $stmt->bindParam(1, $ip);
    
        $stmt->execute();
    ?>
    выдаёт ошибку:
    Примечание : Не определено переменная: DBLink в C: \ XAMPP \ HTDOCS \ офсетные \ testip.php на линии 21 
    
    Внимание : mysql_query () ожидает параметр 2 , чтобы быть ресурсом, приведены в нуль C: \ XAMPP \ HTDOCS \ кормили \ testip.php на строка 21 
    
    Примечание : неопределенная переменная: dbh в C: \ xampp \ htdocs \ fed \ testip.php в строке 25 
    
    Фатальная ошибка : вызов функции-члена prepare () для null в C: \ xampp \ htdocs \ fed \ testip.php на линии 25
    
    $dbQuery = mysql_query($sql,$dbLink);
    
    $stmt = $dbh->prepare("INSERT INTO usertbl(ip) VALUES(ip)");

    Кто знает как записать IP из формы и сохранить в базу даных MySQL

    arts, 18 Апреля 2019

    Комментарии (56)
  2. 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)
  3. 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)
  4. 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)
  5. 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)
  6. PHP / Говнокод #25534

    −2

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

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

    OCETuHCKuu_nemyx, 11 Апреля 2019

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

    0

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

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

    BoeHHblu_nemyx, 10 Апреля 2019

    Комментарии (13)
  8. 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)
  9. PHP / Говнокод #25522

    0

    1. 1
    if (true === false)

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

    quentiam, 08 Апреля 2019

    Комментарии (10)
  10. 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)