Показать сообщение отдельно
  #1 (permalink)  
Старый 01.12.2018, 15:47
Аспирант
Отправить личное сообщение для garrip91 Посмотреть профиль Найти все сообщения от garrip91
 
Регистрация: 07.10.2018
Сообщений: 75

Взаимодействие формы обратной связи с таблицей из БД "MySQL"
Здравствуйте, уважаемые пользователи этого сайта!!!

В настоящее время я на каком-то ранее неизвестном мне сайте ("https://beonmax.com/ru/") на платной основе изучаю 1 из множества сложнейших языков программирования (это "php", как вы уже поняли).

Суть освоения данного курса на этом сайте заключается в просмотре видеоуроков, составлении кода (как на видеоролике) и закреплении материала путём выполнения заданий различных уровней сложности.



Наткнулся я на очередное задание (вот ссылка на неё: https://beonmax.com/ru/courses/php-a...eo-sql-delete/), в котором необходимо:

1. создать таблицу с названием "music" в базе данных с полями: "id", "name" и author (ну с этим вроде я справился);

2. заполнить эту таблицу данными, где "name" - название композиции, "author" - название исполнителя(группы) (как я понял из задания, заполнять эту таблицу нужно с использованием формы обратной связи);

3. создать страницу "player.php" и сделать в ней базовую html-разметку (ну как я понял, обычную форму обратной связи согласно заданных условий), после чего вывести на странице все записи таблицы "music" (при этом числовые значения поля "id" выводить не нужно) (ну а с этим я, естественно, не справился, так как НУ ЭТО ПРОСТО П@@@@Ц, А НЕ ЗАДАНИЕ).



Начиная выполнять это чудовищное задание, я составил следующие синтаксисы:

/* Form(new).html */

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Form(new)</title>
</head>
<body>

<form action="http://localhost/www/Player.php" method="post">
<p>Author: <input type="text" name="author" placeholder="Название группы/исполнителя"></p>
<p>Name: <input type="text" name="called" placeholder="Название композиции"></p>
<br>
<input type="submit" name="sub"><input type="reset" name="res">
</form>
<br>
<p><?php echo mb_strtoupper(trim((@$_POST['author'])))." исполняет композицию ".mb_strtoupper(trim((@$_POST['called']))); ?></p>

</body>
</html>



/* Player.php */

<?php print_r($_POST); ?>

<?php

$mysqli = new mysqli('localhost', 'root', '', 'kinomonster');

if(mysqli_connect_errno()) {
printf("Соединение не установлено", mysqli_connect_error());
exit();
}

$mysqli->set_charset('utf8');

$query = $mysqli->query('SELECT * FROM music');

while ( $row = mysqli_fetch_assoc($query) ) {
echo $row['author']." - ".$row['name']."<br>";
}

$query = "INSERT INTO music VALUES(null, $_POST['author'], $_POST['called'])";
$mysqli->query($query);

$mysqli->close();

?>



locahost выдаёт ошибку следующего содержания:

"Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\xampp\htdocs\www\Player.php on line 20".





Вопросы:

1. Почему у меня возникает эта ошибка (которую, кстати говоря, даже валидаторы воспринимают абсолютно также, как и localhost с браузером )?

2. Правильно ли я начал выполнять задание?

3. КАК МНЕ ВООБЩЕ ВЫПОЛНИТЬ ЭТО ЗАДАНИЕ?
Ответить с цитированием