Stack Overflow на русском Asked on February 17, 2021
Всем привет, я на своих знаниях сделал отзывы для сайта php. Проблема с тем что при нажатии на кнопку отправить, форма отправляет инфу которою скрипт проверяет и создает строку в БД с отзывом, но если перезагрузить сайт, то етаже инфа создает ещо одну строку и так далее. Я менял action на get и post, пробывал стреть post через команду, перейти на другую страницу с header, но етот вариант точно не может быть. Пожалуйста помогите справиться с проблемой.
browse.php
<?php
include('/includes/header.html');
require('/mysql.inc.php');
$pid = $_GET['pid'];
if(isset($_GET['pid'])){
$result = $dbc->query("SELECT * FROM `products` WHERE `id`=" . $pid);
$reviews = $dbc->query("SELECT * FROM `reviews` WHERE `product_id`=" . $pid);
while($row = $result->fetch_assoc()){
include('/views/browse.html');
}
}else {
include('/views/noproducts.html');
}
if(isset($_POST['inc']) !== isset($_POST['inc'])){
$name = $_POST['n'];
$include = $_POST['inc'];
$reviews = mysqli_query($dbc, "INSERT INTO `reviews` (`product_id`, `name`, `include`) VALUES ($pid,$name,$include)");
}
include('/includes/footer.html');
?>
browse.html
<?php
$pid = $_GET['pid'];
echo '
<div class="clearfix">
<p class="browse-name">' . $row['name'] . '</p>
<div class="browse-image"><img src="/images/' . $row['image'] . '" class="browse-image-inner"/></div>
<div class="browse-top">
<div class="browse-stock">
<svg aria-hidden="true" height="18" width="18"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-okay"><svg viewBox="0 0 16 16" id="icon-okay">
<path d="M8,0C3.6,0,0,3.6,0,8s3.6,8,8,8s8-3.6,8-8S12.4,0,8,0z M8,14c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6 S11.3,14,8,14z"></path>
<path d="M11.7,5.3c0.4,0.4,0.4,1,0,1.4l-4,4c-0.4,0.4-1,0.4-1.4,0l-2-2c-0.4-0.4-0.4-1,0-1.4c0.4-0.4,1-0.4,1.4,0L7,8.6 l3.3-3.3C10.7,4.9,11.3,4.9,11.7,5.3z"></path>
<svg></use></svg>
Є в наявності
</div>
<h5 class="browse-code">
Код: ' . $row['code'] . '
</h5>
<div class="browse-trade">
<div class="browse-price">' . $row['price'] . ' ₴</div>
<button class="add-to-cart"><a href="/cart.php?sku='.$row['id'].'&action=add">В корзину</a></button>
<a href="/wishlist.php?sku='.$row['id'].'&action=add">
<svg viewBox="0 0 24 22" class="browse-heart-icon">
<path d="M11.3022 2.72346L12.0004 3.40422L12.6985 2.72332C13.7846 1.66396 15.276 1 16.9387 1C20.3433 1 23 3.75848 23 7.03761C23 8.77432 22.2631 10.3504 21.0666 11.4595L21.0516 11.4734L21.0372 11.4879L11.9982 20.5815L2.90797 11.4364L2.89728 11.4256L2.88627 11.4152C1.71766 10.3087 1 8.75166 1 7.03761C1 3.75848 3.65669 1 7.06134 1C8.72443 1 10.2154 1.66391 11.3022 2.72346Z"></path>
</svg>
</a>
</div>
<div class="browse-description browse-title">Опис: <div class="browse-description-inner browse-text">';
if($row['description'] !== ''){
echo $row['description'];
}else{
echo '<div class="browse-no-data">Опису немає</div>';
}
echo '</div></div>
</div>
</div>
<div class="browse-reviews browse-title">Відгуки: ';
if(mysqli_num_rows($reviews) !== 0){
while($rowi = $reviews->fetch_assoc()){
echo '<hr><div class="browse-reviews-name">' . $rowi['name'] . ':</div>
<div class="browse-reviews-include browse-text">' . $rowi['include'] . '</div>';
}
}else{
echo '<div class="browse-no-data">Відгуків немає</div>';
}
echo '</div>';
echo '<h1></h1>---------------------------------------------------------------------------------------------------------------</h1>';
echo '<form name="comment" action="browse.php?pid=' . $pid . '" method="post">
<p>
<label>Имя:</label>
<input type="text" name="n" autocomplete="off" />
</p>
<p>
<label>Комментарий:</label>
<br />
<textarea name="inc" rows="10" autocomplete="off"></textarea>
</p>
<p>
<input type="hidden" name="pid" value="' . $_GET['pid'] . '" />
<input type="submit" value="Отправить" />
</p>
</form>';
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP