Нужна помощь здесь. Код работает нормально с фиксированным значением вставки, но проблема с переменными. Все, что я получаю, это пустое имя. Дважды проверил, но не могу найти проблему. Любая помощь приветствуется.
вывод mysql:
id name
5
код
if (isset($_SESSION['user_id'])) {
header('Location: index.php');
}
include_once 'includes/db_connect.php';
// define variables and set to empty values
$name_error = '';
$name = '';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if (empty($_POST['name'])) {
$name_error = 'Name is required';
} else {
$name = mysqli_real_escape_string($connection, $_POST['name']);
// check if name contains only letters and whitespace
if (!preg_match("/^[a-zA-Z ]*$/", $name)) {
$name_error = 'Only letters and white space allowed';
}
}
$sql = "INSERT INTO users (name) VALUES ('" . $name . "')";
if (!mysqli_query($connection, $sql)) {
die('Error : ' . mysqli_error($connection));
}
}
?><!-- create account -->
<form class="form-inline" action="<?php echo ($_SERVER['PHP_SELF']); ?>" method="post">
<!-- name -->
<div class="form-group">
<input type="text" name="register_name" value="<?php echo $name; ?>" class="form-control" placeholder="Name" size="35" required>
</div>
<!-- submit -->
<div class="form-group">
<input type="submit" name="submit" value="submit" class="btn btn-primary btn-flat"></input>
</div>
</form>
менять $_POST['name']
в $_POST['register_name']
потому что вы используете register_name
в form field
Других решений пока нет …