Как исправить вносящиеся пробелы в базу данных?

0

 Вопрос который я так и не смог решить. После того как мы внесли изменения в бузу данных, поля Name и Author , как бы очищаются, и если еще раз нажать добавить в БД внесутся  пробелы, или если обновить страницу также в БД внесутся  пробелы ( тут можно запретить пользователям обновлять страницу или нажимать кнопку "Назад" и повторно отправлять форму) - решение было частично  найдено (в коде его не писал ). Но вот решение с повторной отправкой и внесением в БД пробелов я не нашел.


<?php

$mysqli = new mysqli('127.0.0.1', 'root', '', 'music');
	
   if(mysqli_connect_errno()) {
        printf("Соединение не установлено", mysqli_connect_error());
        exit();
       
       }

       $mysqli->set_charset('utf8'); 



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

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





$name = NULL;
$author = NULL;

 if(isset($_POST['name']) && isset($_POST['author'])) {
        
        $nameFilter = htmlspecialchars($_POST ['name'], ENT_QUOTES, 'UTF-8');
        $authorFilter = htmlspecialchars($_POST ['author'], ENT_QUOTES, 'UTF-8');

        $name = $nameFilter;
        $author = $authorFilter;
    
        $query = "INSERT INTO player VALUES(null, '$name', '$author')";
        $mysqli->query($query);

    }



?>

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">


	<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">


	<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
	<title>Document</title>
</head>
<body>
	<div class="col-lg-6 col=lg-push-3 field">
		<form action="http://kinomonster.com/player.php" method="POST" clas="form-group">
			<legend>Исполнитель / Песни</legend>
		 	<input type="text" name="name" placeholder="<?php echo $name;?>">
		 	<input type="text" name="author" placeholder="<?php echo $author;?>">
			<button type="submit" class="btn">Добавить</button> 	
		</form>

		<table class="table table-striped ">
                    <?php $querry = $mysqli->query('SELECT * FROM player'); ?>

                                      <?php if($querry): ?>
                        <?php while ($row = mysqli_fetch_assoc($querry)): ?>

                            <tr>
                                <td><?php echo $row['name']; ?></td>
                                <td><?php echo $row['author']; ?></td>
                            </tr>

                        <?php endwhile; ?>
                    <?php endif; ?>

          </table>

 	</div>
	     <?php
	     
            $mysqli->close();
        ?>
</body>
</html>

php
mysql

1 ответов

1

Вот тут есть решение, чтобы не дублировались данные в базе:

https://fructcode.com/ru/qa/pochemu-pri-kajdom-obnovlenii-tablisi/

Sign up or Log in to write an answer