Не работает запрос UPDATE, данные не изменяются. Переменные существуют, через echo проверял, подключение к базе данных тоже, другие запросы выполняются.
mysql_query("UPDATE `ideas` SET `login` = ".$_POST['name']." WHERE `id` = ".$_POST['id']."");
//защита от XSS атаки и замусоренности
$name = substr(htmlspecialchars(trim(strip_tags($_POST['name']))), 0, 24 );
//Самое длинное русское имя - Константин - 10 символов, на лат.= 20
$id = (int) abs($_POST['id']);//только целое положительное
*А если у Вас уже есть соединение с базой, то лучше так:
$name = substr(htmlspecialchars(trim(strip_tags($_POST['name']))), 0, 24 );
$name = mysql_real_escape_string($name);//от SQL инъекции
$id = (int) abs($id);
$id = mysql_real_escape_string($id);//можно без этого - в этом случае
$sql = "UPDATE `ideas` SET `login`='$name' WHERE `id`='$id'";
mysql_query($sql) or die(mysql_error());
Ну, а вообще, как указали, лучше так (просто для интереса)(PDO):
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "db";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// устанавливаем PDO режим ошибки на исключение
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "UPDATE ideas SET login='$name' WHERE id='$id'";
// Подготавливаем запрос
$stmt = $conn->prepare($sql);
// Выполняем запрос
$stmt->execute();
// Выводим сообщение об успешном апдейте
echo $stmt->rowCount() . " Все хорошо";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
Процедурный:
// Создаем соединение
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Проверяем соединение
if (!$conn) {
die("Соединение не удалось: " . mysqli_connect_error());
}
$sql = "UPDATE ideas SET login='$name' WHERE id='$id'";
if (mysqli_query($conn, $sql)) {
echo "Запись успешно обновлена";
} else {
echo "Ошибка при обновлении: " . mysqli_error($conn);
}
mysqli_close($conn);
MySQLi объектно-ориентрированный:
// Уст. соединение
$conn = new mysqli($servername, $username, $password, $dbname);
// Проверяем его
if ($conn->connect_error) {
die("Не удалось соединиться: " . $conn->connect_error);
}
$sql = "UPDATE ideas SET login='$name' WHERE id='$id'";
if ($conn->query($sql) === TRUE) {
echo "Запись успешно обновлена";
} else {
echo "Ошибка при обновлении записи: " . $conn->error;
}
$conn->close();
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Эта загрузка работает стабильно на локальном сервере, но на удаленном нетВ форме прописан enctype="multipart/form-data
Есть проект на Spring Boot Как мне входящие данные из формы фильтровать? Допустим в объекте TestDTO есть поле phone, до валидации я хочу удалить все не числовые...
Переустановка Alarm после перезагрузки устройстваУ меня объявлен широковещательный приемник, который запускается при загрузке ОС на устройстве