$age = $conn->real_escape_string($_POST["userage"]);
является уязвимостью. Метод real_escape_string должен применяться только к строкам: тем самым, которые внутри запроса обрамляются кавычками. А числа надо приводить к числовому типу: $age = (int)$_POST["userage"];
$req = $conn->prepare("INSERT INTO Users (name, age) VALUES (?, ?)");
if($req->execute([$_POST["username"], $_POST["userage"]])) {
<?php
if (isset($_POST["username"]) && isset($_POST["userage"])) {
$conn = new mysqli("localhost", "fr7910hy_users", "PASS", "TABLE");
if($conn->connect_error){
die("Ошибка: " . $conn->connect_error);
}
$name = $conn->real_escape_string($_POST["username"]);
$age = $conn->real_escape_string($_POST["userage"]);
// Проверяем, существует ли пользователь с таким именем
$check_sql = "SELECT * FROM Users WHERE name='$name'";
$result = $conn->query($check_sql);
if ($result->num_rows > 0) {
// Пользователь с таким именем уже существует
echo "Ошибка: Пользователь с таким именем уже существует.";
} else {
// Если пользователя нет, добавляем нового
$sql = "INSERT INTO Users (name, age) VALUES ('$name', $age)";
if($conn->query($sql)){
echo "Данные успешно добавлены";
} else {
echo "Ошибка: " . $conn->error;
}
}
$conn->close();
}
?>
// Код для удаления пользователя по имени
if (isset($_POST["delete_username"])) {
$conn = new mysqli("localhost", "fr7910hy_users", "PASS", "TABLE");
if($conn->connect_error){
die("Ошибка: " . $conn->connect_error);
}
$delete_name = $conn->real_escape_string($_POST["delete_username"]);
// Удаляем пользователя по имени
$delete_sql = "DELETE FROM Users WHERE name='$delete_name'";
if ($conn->query($delete_sql) === TRUE) {
echo "Пользователь успешно удалён.";
} else {
echo "Ошибка при удалении пользователя: " . $conn->error;
}
$conn->close();
}
?>
таблица имеет
id,name,age
вот код добавляет в таблицу имя и возраст
как перед добавление проверить есть ли такое имя уже в базе или нет подредактируйте именно даунный код все работает но можно добавлять бескоенчно
<?php
if (isset($_POST["username"]) && isset($_POST["userage"])) {
$conn = new mysqli("lдщсрщые", "fr7910hy_users", "PASS", "TABLE");
if($conn->connect_error){
die("Ошибка: " . $conn->connect_error);
}
$name = $conn->real_escape_string($_POST["username"]);
$age = $conn->real_escape_string($_POST["userage"]);
$sql = "INSERT INTO Users (name, age) VALUES ('$name', $age)";
if($conn->query($sql)){
echo "Данные успешно добавлены";
} else{
echo "Ошибка: " . $conn->error;
}
$conn->close();
}
?>