Это мой скрипт регистрации, он не дает мне никаких ошибок, но он не помещает данные в таблицу, не уверен, что делать: я думаю, что это может быть простая синтаксическая ошибка, но я не могу ее найти. Это предложение здесь, потому что оно просит меня добавить больше информации, но у меня их нет, вот код:
<?php include "dbConfig.php"; session_start(); if ($_SERVER['REQUEST_METHOD'] == 'post') { $name = $_POST["name"]; $password = md5($_POST["password"]); $sql = "INSERT INTO `members`(`name`, `password`) VALUES ($name, $password)"; } ?> <form name="frmregister" action="<?= $_SERVER['PHP_SELF'] ?>" method="post"> <input type="text" name="name" size="30" /> <input type="password" name="password" size="30" /> <input type="submit" value="Submit" alt="Submit" title="Submit" /> <input type="reset" value="Reset" alt="Reset" title="Reset" /> </form>
Вы ничего не делаете. Вот как вы должны вставлять данные в таблицу с объектно-ориентированной mysqli:
$servername = "Server Name"; $username = "Username"; $password = "Password"; $dbname = "Database Name"; if ($_SERVER['REQUEST_METHOD'] == 'post') { $name = mysqli_real_escape_string($_POST["name"]); $pass = md5($_POST["password"]); $conn = new mysqli($servername, $username, $password, $dbname); $sql = "INSERT INTO members (name,password) VALUES ('".$name."','".$pass."')"; $conn->query($sql); $conn->close(); }
Подробнее о вставке данных в таблицу с объектом Mysqli Object Oriented здесь .
Спасибо Эрику и Шахару за советы по безопасности!
Надеюсь, поможет!
Изменить:
$sql = "INSERT INTO `members`(`name`, `password`) VALUES ($name, $password)";
Для того, чтобы:
$sql = "INSERT INTO `members`(`name`, `password`) VALUES ('$name', '$password')";
Затем запустите запрос:
mysqli_query($connection, $sql);
… так или аналогично ( $connection
должно быть установлено в вашем файле конфигурации, см. http://php.net/manual/en/mysqli.query.php )