Тема: Не редагує дані в базі через UPDATE (PHP+MYSQLI)
Код не вносить бажані зміни у базу даних. (На цей код посилається лінк "редагувати" на іншій сторінці. Лінк виводиться у циклі while, все норм працює.)
<a href='edit.php?word={$row['word']}>edit</a>
Ось власне код файлу edit.php:
<?php
include "config.php"; #назва змінної що підключається до бази даних - $db
if(isset($_GET['word'])){
$word = isset($_POST['word'])?htmlspecialchars($_POST['word']):'';
$trans = isset($_POST['translation'])?htmlspecialchars($_POST['translation']):'';
$def = isset($_POST['definition'])?htmlspecialchars($_POST['definition']):'';
//
$select_word = "SELECT word FROM dictionary WHERE word='{$_GET['word']}'";
$select_trans = "SELECT translation FROM dictionary WHERE word='{$_GET['word']}'";
$select_def = "SELECT definition FROM dictionary WHERE word='{$_GET['word']}'";
//
$rslt_word = mysqli_query($db,$select_word);
$rslt_trans = mysqli_query($db,$select_trans);
$rslt_def = mysqli_query($db,$select_def);
//
if($rslt_word && mysqli_num_rows($rslt_word)>0) {
while($row1 = mysqli_fetch_row($rslt_word)){
echo "<form method='post' action={$_SERVER['PHP_SELF']}>
<h1>Редагувати слово <label>{$_GET['word']}</label></h1>
<input required type='text' name='word' value='{$row1[0]}'>";
}
}
//
if($rslt_trans && mysqli_num_rows($rslt_trans)>0){
while($row2 = mysqli_fetch_row($rslt_trans)){
echo "<input required type ='text' name='translation' value='{$row2[0]}'>";
}
}
//
if($rslt_def){
while($row3 = mysqli_fetch_row($rslt_def)){
echo "<textarea rows='5' cols='45' type='text' name='definition' 'maxlength='200'>{$row3[0]}</textarea><br>
<input type = 'submit' name='submit' value='Зберегти' >
</form>";
}
}
if($word && $trans && $def){
$edit="UPDATE dictionary SET word='$word',translation='$trans',definition='$def' WHERE word='{$_GET['word']}'";
if (mysqli_query($db,$edit)){
echo "Слово було успішно змінено";
}else{
echo "Помилка. Редагування слова не відбулось".mysqli_error($db);
}
}
} else{
echo "something went wrong";
}
?>
Після натискання кнопки "змінити" на екран виводиться повідомлення "something went wrong".
Підскажіть, як зробити код робочим?