fapchat
@fapchat

Почему в бд mysql вместо реального пароля всегда вставляется «0»?

spoiler
<?php
   require('connect.php');
   if (isset($_POST['email']) && isset($_POST['password'])) {
     $email = mysql_fix_string($connection, $_POST['email']);
        $password = mysql_fix_string($connection, $_POST['password']);
       $query = "INSERT INTO users (email, password) VALUES ('$email', '$password')";
       $result = mysqli_query($connection, $query) ;
   }

     function mysql_fix_string($conn, $string)
     {
         $string = stripslashes($string);
         return $conn->real_escape_string($string);
     }
    ?>  

...


         <form   name="f1" method="post">

           <p>       <input type="email" name="email" placeholder="email" required>
           <input type="password" placeholder="password" name="password"maxlength="10"  >
           <input type="password" placeholder="confirm password" name="confirm"maxlength="10"  >
           <br><p class="error" aria-live="polite"></p>
           <br><input type="submit" value="REGISTRATION" name="submit" class="reg" ></p>


           </form>

connect.php
<?php
$connection = mysqli_connect('localhost', 'fapchat', 'wqeqweqwe' , 'practice');
?>

Чтобы я не написал в у меня будут нули вместо пассворда
| email | password | id |
+--------------------+----------+----+
| fapchat2@gmail.com | 0 | 1 |
| fapchat2@gmail.com | 0 | 2 |
  • Вопрос задан
  • 83 просмотра
Решения вопроса 2
SagePtr
@SagePtr
Еда - это святое
Тип поля в таблице не числовой случаем?
Ответ написан
fapchat
@fapchat Автор вопроса
alter table users CHANGE password password varchar(128);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@P747
Скорее всего тип поля в структуре таблицы не строка. Вообще лучше всего использовать PHP PDO https://www.php.net/manual/ru/pdo.connections.php Тогда необходимость в функции "mysql_fix_string" отпадет и вместо isset() лучше !empty()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы