Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Kako da zaustavim dupliranje podataka (REFRESH PROBLEM)

PHP
  • 5 odgovora
  • 5.161 pregleda

Najnovija ↓

Kako da zaustavim dupliranje podataka (REFRESH PROBLEM) 26.01.2006. u 09:39 · pre 252 meseca #1
Relativno sam novajlija u PHP/Mysql -u i skoro sam poceo rad za bazama podataka (MYSQL) i imam sledeci problem:

Podaci se dupliraju kada se na browseru pritisne "Reload/Refresh"...
Verovatno je vecina davno prosla taj problem pa nema potrebe da vam sta dalje pricam ...

Help???
Re: Kako da zaustavim dupliranje podataka (REFRESH PROBLEM) 26.01.2006. u 12:29 · pre 252 meseca
izmenjeno 1 put, poslednji put Leftfield 27.01.2006. u 22:57
  1. Leftfield27.01.2006. u 22:57zapis iz teksta poruke
#2
OK. Izvini sto sam ovako odgovorio. Htjeo sam te nacerati da nesto naucis. Evo odgovora:
Probaj preko sesije da odradis kao: vec je bio zahtjev, dobio si ga i nemas prava vise da ga trazis dok traje ova sesija. Mozes kao sto je rekao afwt ili posle jednom ispisanih podataka da uzmes izgenerisani broj onaj id i ukljucis ga u varijablu ili cookie. Ili:



session_start();
if($_POST['submit'] &&
isset($_SESSION['form_processed']) &&
$_SESSION['form_processed'] == false){
process();
}
else{
<form action....>
blablabla
<input type='submit' name='submit'>
</form>
$_SESSION['form_processed'] = false;
}

function process(){
odje radis ono SQL ili bilo sto drugo
$_SESSION['form_processed'] = true;
}

Mada mi se cini najbolje resenje AFWT ('location:PAGE_NAME'); exit();
Potpis
Pfff
Re: Kako da zaustavim dupliranje podataka (REFRESH PROBLEM) 26.01.2006. u 15:53 · pre 252 meseca #3
Mozes na primer da onemogucis visestruke pritiske na submit dugme od forme preko JS-a, ili da uvedes timestamp za unos pa da onemogucavas update u nekom narednom vremenskom periodu ili da potpuno onemogucis duple unose preko SQL-a.
Potpis
Owl
Re: Kako da zaustavim dupliranje podataka (REFRESH PROBLEM) 27.01.2006. u 16:48 · pre 252 meseca #5
Ili to, ili da kada uneses podatke u bazu, napravis redirekciju sa
header("Location: /result.php"); exit;

gde ces samo ispisati rezultat. U tom slucaju, ako pritisnu F5, pojavice im se opet ta nova stranica, nece se izvrsiti unos jer nisu vise na toj stranici koja to radi. ;-)
Potpis
ZelenaLutrija.com - Saznajte sve o lutriji za zelenu kartu (doživotni boravak u Sjedinjenim Američkim Državama)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme