После отправки чего-либо через мою форму я получаю приветственную часть, а затем ошибку подключения mysql, потому что mysql выключен, он исчезает, когда я включаю его, а затем – логическую ошибку. «Предупреждение: mysqli_query () ожидает, что параметр 1 будет mysqli, boolean задан в C: \ xampp \ htdocs \ welcome.php в строке 25"
<html> <body> Welcome <?php echo $_POST["name"]; ?><br> Your email address is: <?php echo $_POST["email"]; ?><br> Your password is <?php echo $_POST["password"]; ?><br> You have purchased the <?php echo $_POST["sub_type"]; ?> <?php $mysqli_host = "localhost"; $mysql_username = "root"; $mysql_password = "123"; $site_db = "test"; $info_name = $_POST["name"]; $info_pass = $_POST["password"]; $info_email = $_POST["password"]; $sub_type = $_POST["sub_type"]; $con=mysqli_connect($mysqli_host,$mysql_username,$mysql_password,$site_db); // Checks connection to twitch webpanel database and inserts registreation info if (mysqli_connect_errno()); { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } mysqli_query($con,"INSERT INTO Users (Username, Password, Email, Subcription) VALUES ('$info_name', '$info_pass', '$info_email', '$sub_type')"); ?> </body> </html>
Скорее всего, у вас ошибка соединения в mysqli_connect. Неверные учетные данные или MySQL отключены.
if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); //you need to exit the script, if there is an error exit(); }
if (mysqli_connect_errno()); { echo "Failed to connect to MySQL: " . mysqli_connect_error(); exit(); // **this is missing** } mysqli_query($con,"INSERT INTO Users (Username, Password, Email, Subcription) VALUES ('$info_name', '$info_pass', '$info_email', '$sub_type')");
Вот ваша ошибка:
if (mysqli_connect_errno());
На конце не должно быть точки с запятой.
Также в соответствии с документацией вы должны использовать это для проверки ошибок подключения:
if (mysqli_connect_error())
Но, как я сказал в комментарии, я рекомендую использовать PDO вместо mysqli. И убедитесь, что вы правильно избегаете значений, вставленных в базу данных, и зашифровывайте пароль с помощью pbkdf2 или scrypt.