Следующая MySQLi запрос не выполняет, так как я просматриваю таблицу 'пользователей и не содержит каких-либо записей:MySQLi не проводки в базу данных
//connection.php//
$db_connect = mysqli_connect('myremotehost', 'myremoteuser', 'mypass', 'mydatabase');
if(mysqli_connect_errno($db_connect)){
echo mysqli_connect_error();
exit();
}
//
include 'database/connection.php';
$username = $_POST['username'];
$password = md5($_POST['password']);
$email = $_POST['email'];
$email_code = md5($_POST['username'] + microtime());
$gender = $_POST['gender'];
$ip = getenv('REMOTE_ADDR');
$sql = "INSERT INTO `users` (username, password, email, email_code, gender, ip, signup, lastlogin, notescheck) VALUES('$username','$password','$email','$email_code','$gender','$ip',NOW(),NOW(),NOW())";
$query = mysqli_query($db_connect, $sql);
//below are the forms with their respective 'input names' that are equal to: username, email and gender (values 'm' & 'f').
//The action of the actual form is action="" this file.
Я знаю, что этот код выполняется, так как непосредственно под переменные $ sql и $ query у меня есть другой код, который создает папку в каталоге/users/после выполнения, и всякий раз, когда я проверяю свой онлайн-каталог, он создается, но опять же проблема заключается в том, что запрос ничего не публикует в базе данных.
Любые предложения?
Спасибо, ребята!
В: Почему у вас есть «пользователи» внутри backticks? Это не зарезервированное слово. –
Это не наносит вреда. – Sven
Перед тем, как вы напишете ** какой-нибудь ** код взаимодействия с SQL, вы должны прочитать [надлежащее SQL-экранирование] (http://bobby-tables.com/php), чтобы избежать серьезных [SQL-инъекций] (http: // bobby-tables.com/). При использовании 'mysqli' вы должны использовать [' bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php), чтобы вставлять в ваш запрос такие значения, как '$ username', в основном избегая этих проблем. – tadman