@zemf4you

Не могу добавить строки в БД. Что делать?

Вот три файла.
registration.php:
<html>
<head>
	<meta charset="UTF-8">
	<link rel="shortcut icon" href="/img/favicon.png">
    <link rel="apple-touch-icon" href="/img/favicon.png">
	<link rel="stylesheet" type="text/css" href="/css/style.css">
	<title>Регистрация</title>
</head>
<body>
<div id="div" align="center"><br><br>
<form method="post" action="add.php" name="Register" align="center">
<input type="text" placeholder=" Имя" name="Name"/><br><br>
<input type="text" placeholder=" Пароль" name="Password"/><br><br>
<input type="submit" value="Зарегистрировать" class="button" />
</form>
</div>
</body>
</html>

db.php:
<?php
  $db_host  = "***";
  $db_user  = "***";
  $db_pass  = "***";
  $db_name  = "***";
  
  $userstable = "users"; 

$connect_db = mysql_connect($db_host,$db_user,$db_pass) or die("Ошибка подключения к серверу:".mysql_error());
mysql_select_db($db_name,$connect_db)  or die("Ошибка подключения к  базе данных:".mysql_error());
?>

и add.php:
<? 
require 'db.php';
if (isset($_POST["Name"])) {
    $sql = mysql_query("INSERT INTO `products` (`Name`, `Password`) 
                        VALUES ('".$_POST['Name']."','".$_POST['Password']."')");
    if ($sql) {
        echo "<p>Данные успешно добавлены в таблицу.</p>";
    } else {
        echo "<p>Произошла ошибка.</p>";
    }
}

Выдаёт - Произошла ошибка. Но где она?) И какую таблицу создавать в PHPMYADMIN? Не бейте сильно палками, пожалейте нуба(
  • Вопрос задан
  • 115 просмотров
Решения вопроса 1
a13xsus
@a13xsus
Lazy developer
Используйте mysqli_connect() и mysqli_query(), потому как прежние функции были упразднены в PHP 5.0.0 и удалены в 7.0.0.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Первая ошибка - выбор библиотеки mysql_, которая не рекомендована к использованию начиная с PHP 5.5 и не поддерживается, начиная с PHP 7.0.

Вторая ошибка - прямая подстановка параметров в запрос, даже без экранирования.

Ну и третья, главная ошибка - нежелание читать документацию. А там описана функция mysql_error(), возвращающая текст ошибки в последней операции mysql_.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы