Restrictie trimitere formular php

Discuţii diverse, dar centrate pe subiecte IT.
Reguli forum
Aveti o problema si vreti sa primiti ajutor? Click aici ! Nu uitati si de regulamentul forumului !
AsKode21
Utilizator înregistrat
Mesaje: 57
Membru din: 04-Aug-2013, 16:31:42
Versiune: 3.0.12
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Puţin experimentat
Nivel php: Puţin experimentat

Restrictie trimitere formular php

Mesaj de AsKode21 »

Bună seara.
Am un formular care funcţionează ca o pagină de feedback. Datele completate sunt luate şi trimise către o căsuţa de mail. Problema apare la butonul submit.
Am folosit

Cod: Selectaţi tot

				header("Location: /dnsrequest/succes.php");
pentru a îl redirecţiona pe cel care apasă submit către o pagină care ii confirmă că formularul a fost trimis, dar am observat că daca apesi pe butonul de întoarcere din browser (firefox) te întoarce la formular cu toate câmpurile completate anterior, astfel apăsând iar pe butonul submit formularul se mai trimite o dată si astfel se găseşte un pierde vară să facă acest lucru pentru a îmi spama mail-ul.

Cum pot să evit retrimiterea formularului ?

Cod: Selectaţi tot

<? ob_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cerere subdomeniu</title>
<link rel="stylesheet" type="text/css" href="view.css" media="all">
</head>
<?php
error_reporting(E_ALL^E_NOTICE);
if($_POST['submit'])
{ 
	$nume = $_POST['element_1_1'];
	$prenume = $_POST['element_1_2'];
	$varsta = $_POST['element_2'];
	$email = $_POST['element_3'];
	$cnp = $_POST['element_4'];
	$firma = $_POST['element_5'];
	$adresa = $_POST['element_6'];
	$port = $_POST['element_7'];
	$dns = $_POST['element_8'];
	$sloturi = $_POST['element_9'];
	$joc = $_POST['element_10'];
	$modjoc = $_POST['element_11'];
	$link = $_POST['element_12'];	
	$forum = $_POST['element_13'];	
	$mod = $_POST['element_14'];	
	$to = "dns@visiongame.ro"; // email
	$header = "DNS request"; // subject
	if(!$nume || !$prenume || !$varsta || !$email || !$cnp || !$firma || !$adresa || !$port || !$dns || !$sloturi || !$joc || !$modjoc || !$link || !$forum || !$mod)
	{
		echo "<span style='color:#ffffff;font-size:30px;'>*Toate campurile sunt obligatorii !*</span>";
	}
	else
	{
		$message = "
	Informaţii personale

		Nume şi prenume: $nume $prenume
		Vârstă: $varsta
		E-mail: $email
		Cod numeric personal: $cnp


	Detalii DNS

		Firma la care este găzduit serverul: $firma 
		Adresa IP + port: $adresa:$port
		DNS: $dns
		Sloturi server: $sloturi
		Server de: $joc
		Modul de joc: $modjoc	
		Link gametracker: $link 


	Forum şi moderaotri

		Categorii: 
$forum

		Moderatori: 
$mod "; 
		mail($to,$header,$message);
	}
	
				header("Location: /dnsrequest/succes.php");
}
else
{?>
<-------- Codul HTML al paginii -------->
<? ob_flush(); ?>
AsKode21
Utilizator înregistrat
Mesaje: 57
Membru din: 04-Aug-2013, 16:31:42
Versiune: 3.0.12
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Puţin experimentat
Nivel php: Puţin experimentat

Re: Restrictie trimitere formular php

Mesaj de AsKode21 »

Nici o idee ? ..
Scrie răspuns

Înapoi la “Diverse”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Bing [Bot] și 4 vizitatori