Dibikin sendiri aja mas klo sudah tau konsepnya...

1. create random string, sample:
rand_string = (a=("a".."z").to_a; (1..10).collect{a[rand(a.size
)]}.join).to_s

2. tanem ke session di dalam controller yang nampilin form:
session[:random_string] = rand_string

3. simpen di hidden field form:
<%= hidden_field tmp_rand_string, {:value => session[:random_string] }%>

4. validate di controller yang nerima action dari form:
unless params[:tmp_rand_string] == session[:random_string]
  //true
  //hapus session, or create lagi, trus save, blah blah...
else
  //false
end

atau validate jg bisa ditaro di model (akan lbh gampang, karena bisa
memanfaatkan tampilan error message di form tsb), dengan memanfaatkan
attribute accessor ataupun virtual attribute.

regards,

~inung;

On 24/07/07, dhendy ferdian <[EMAIL PROTECTED]> wrote:
>
>   klo solusi adit itu untuk kasus khusus, maksudnya apabila kita memang
> menginginkan datanya ga boleh sama atau unik untk setiap pengisian data
>
> tapi kasusnya adalah apabila kita boleh mengisikan data yang sama,
> namun aplikasi dapat menghandle duplikasi data yang diakibatkan
> user men-submit lebih dari sekali
>
> namun apabila ada user lain mengisikan content yang sama akan diterima
> oleh system
>
> contoh nya konsep kerja di framework xaraya (http://www.xaraya.com/)
>
> di framework xaraya (php)
>
> ketika menampilkan suatu form dia menggenerate random string yang di
> simpan ke session,
> nah ketika kita akan mensubmit form tersebut,
> xaraya mencocokkan generate string yang ada di form dengan yang ada di
> session kemudian session nya di hapus
>
> dengan begitu ketika form yang sama disubmit lebih dari sekali maka pasti
> akan gagal disimpan dan yang disimpan yang pertama saja karena sessionnya
> sudah dihapus sama proses submit yang pertama.
>
> Sewaktu kita menampilkan form itu, xaraya akan menggenerate random string
> lagi, begitu seterusnya
>
> yang saya tanyakan adalah sistem seperti itu ada ga di rails?
> sehingga form yang sama tidak akan bisa disubmit lebih dari sekali dengan
> sengaja
>
> Thanks ....
>
>

-- 
in03ng a.k.a inung a.k.a nursamsi a.k.a nur syamsi
Y! in03ng


[Non-text portions of this message have been removed]

Kirim email ke