Как выполнить задание player и почему отображаются ошибки?
0
Обзор домашнего задания №57 и почему отображаются ошибки?
Добрый вечер! Сделал домашнее задание, на одной странице вывел 3 формы 1 - добавляет данные в БД, 2 - редактирует, 3 - удаляет. Возникла проблема, постоянно выводит: Notice: Undefined index: insertName in /opt/lampp/htdocs/kinomonster/player.php on line 12 и тому подобные, если добавить в бд что нибудь то ошибка пропадает. пробовал проверять по isset, !isset, empty. В чем может быть проблема?
Ну и можно каких нибудь подзатыльников надавать что бы подправить свои ошибки? (в рамках того что проходили за курс) ну и советы на будущее?
сам код:
<?php
$mysql = new mysqli('localhost', 'root', '', 'kinomonster');
if (mysqli_errno($mysql)) {
printf("Соеденение не установлено", mysqli_errno());
exit();
}
$mysql->set_charset('utf8');
$insertName = $_POST['insertName'];
$insertAuthor = $_POST['insertAuthor'];
if (empty($insertName)) {
echo "Название песни обязательно!";
} else if (empty($insertAuthor)) {
echo "Название автора песни обязательно!";
} else {
$insertQuery = "INSERT INTO music VALUES(null, '".$insertName."', '".$insertAuthor."')";
$mysql->query($insertQuery);
}
$updateId = $_POST['updateId'];
$updateName = $_POST['updateName'];
$updateAuthor = $_POST['updateAuthor'];
if ($updateId == "---НИЧЕГО НЕ ВЫБРАННО---") {
echo "Выберите песню из списка!";
} else if (empty($updateName)) {
echo "Напишите новое название песни!";
} else {
$insertQuery = "UPDATE music SET name = '".$updateName."' WHERE id = '".$updateId."'";
$mysql->query($insertQuery);
}
if ($updateId == "---НИЧЕГО НЕ ВЫБРАННО---") {
echo "Выберите песню из списка!";
} else if (empty($updateAuthor)) {
echo "Напишите новое название атора!";
} else {
$insertQuery = "UPDATE music SET author = '".$updateAuthor."' WHERE id = '".$updateId."'";
$mysql->query($insertQuery);
}
$deleteId = $_POST['deleteId'];
$deleteQuery = "DELETE FROM music WHERE id = ".$deleteId."";
$mysql->query($deleteQuery);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Домашнее задание</title>
</head>
<body>
<p>
<form action="" method="post">
<input type="text" name="insertName" placeholder="Название песни" value="">
<input type="text" name="insertAuthor" placeholder="Автор песни" value="">
<input type="submit">
</form>
</p>
<p>
<form action="" method="post">
<select name="updateId">
<option value="---НИЧЕГО НЕ ВЫБРАННО---">---НИЧЕГО НЕ ВЫБРАННО---</option>
<?php
$listOfSongsQuery = $mysql->query("SELECT * FROM music");
while ($listOfSongs = mysqli_fetch_assoc($listOfSongsQuery)) {
echo '<option value="'.$listOfSongs['id'].'">'.$listOfSongs['author'].' - '.$listOfSongs['name'].'</option>';
}
?>
</select>
<input type="text" name="updateName" placeholder="Название песни" value="">
<input type="text" name="updateAuthor" placeholder="Автор песни" value="">
<input type="submit">
</form>
</p>
<p>
<form action="" method="post">
<table>
<?php
$listOfSongsQuery = $mysql->query("SELECT * FROM music");
while ($listOfSongsToDelete = mysqli_fetch_assoc($listOfSongsQuery)) {
echo '<tr><td>'.$listOfSongsToDelete['author'].' - '.$listOfSongsToDelete['name'].'</td><td><button type="submit" name="deleteId" value="'.$listOfSongsToDelete['id'].'">x</button></td>';
}
?>
</table>
</form>
</p>
</body>
</html>
<?php $mysql->close(); ?>
1 ответов
1
Первый ответ пример кода Player:
https://fructcode.com/ru/qa/php-mysql-domasnee-zadanie-57-uroka-tgukud/