<?php
$mysql = mysqli_connect('localhost' , 'root' ,'', 'test');
$a = $_GET['login'];
$b = $_GET['password'];
mysqli_query($mysql , 'INSERT INTO `registr` (`login`, `password`) VALUES (',$a,',',$b,')');
?>
Asked
Active
Viewed 159 times
3 Answers
2
mysqli_query($mysql , 'INSERT INTO `registr` (`login`, `password`) VALUES (',$a,',',$b,')');
mysqli_query()expects at most 3 parameters, 6 given почему?
Итого имеем:
mysqli_query(
1. $mysql
2. INSERT INTO registr (login, password) VALUES (
3. $a
4. ','
5. $b
6. ')'
)
Настоятельно рекомендуется использовать биндинг параметров с подготовленными выражениями для передачи параметров в запрос, а также не использовать GET-запросы для изменения (вставки/редактирования/удаления) данных
teran
- 29,377
0
mysqli_query($mysql , 'INSERT INTO `registr` (`login`, `password`) VALUES ('.$a.','.$b.')');
Конкатенация строки в PHP происходит при помощи точки, у вас - запятые.
Winteriscoming
- 2,347
0
<?php
$mysql = mysqli_connect('localhost' , 'root' ,'','test');
$a = $_GET['login'];
$b = $_GET['password'];
$query = mysqli_prepare($mysql , "INSERT INTO `registr` (`login`, `password`) VALUES (?, ?)");
mysqli_stmt_bind_param($query, 'ss', $a, $b);
mysqli_stmt_execute($query);
Рекомендую вам в дальнейшем использовать подготовленные запросы таких драйверов как PDO, иначе вашей базай будут пользоваться все кто хотят.
Евгений Иванов
- 2,075
,$a,а не.$a.– teran May 16 '18 at 12:25