В этом коде все работает нормально, он принимает имя пользователя из сеанса и отлично вставляет данные с помощью переключателя, только проблема заключается в том, что он автоматически вставляет данные снова, когда я перезагружаю страницу.Данные вставляются автоматически
if(isset($_SESSION['user_id'])&&isset($_POST['r1'])&&isset($_POST['r2'])&&isset($_POST['r3'])&&isset($_POST['r4'])&&isset($_POST['suggestion'])&&isset($_POST['submit'])){
$user=$_SESSION['user_id'];
$r1=$_POST['r1'];
$r2=$_POST['r2'];
$r3=$_POST['r3'];
$r4=$_POST['r4'];
$suggestion=$_POST['suggestion'];
$query_insert="INSERT INTO `wp_feedback` VALUES ('".$user."','".$r1."','".$r2."','".$r3."','".$r4."','".$suggestion."')";
if($query_run=mysql_query($query_insert)){
echo "alright";
}
else {
echo "not inserted";
}
}
Заранее спасибо.
Когда вы перезагружаете страницу после вставки, браузер повторяет запрос POST. Чтобы избежать такого поведения, вы должны перенаправить пользователя на страницу просмотра после вставки в базу данных. – barbashov
перенаправление при вставке 1 –
В качестве (весьма важной) заметки стороны, пожалуйста, прочитайте [SQL injection] (http://en.wikipedia.org/wiki/SQL_injection#Incorrectly_filtered_escape_characters). –