2014-09-11 31 views
5

CakePHP Form yardımcı programıyla form girişleri oluşturuyorum ve bazı girişler (çoğu zaman 'kullanıcı adı' ve 'parola') eylemler, giriş eylemleri, vb. Üzerinde otomatik olarak tamamlanıyor. sinir bozucu. Bunların sadece daha yaygın olduğunu tahmin ediyorum, böylece tarayıcı girişleri tamamlamak için çerezlerini kullanıyor.CakePHP form giriş kutusunda otomatik tamamlamayı devre dışı bırakma

Her neyse .. bunu nasıl devre dışı bırakırım? Bence

:

... 

echo $this->Form->input('username', array(
    'label' => 'Please enter your username', 
    'class' => 'pure-u-1-2' 
)); 
echo $this->Form->input('password', array(
    'label' => 'Please enter your password', 
    'class' => 'pure-u-1-2' 
)); 

... 

ben eksik?

+0

yinelenen olarak işaretlediğiniz değil, ama bu soruyu okumak için http://stackoverflow.com/questions/2530/how-do-you-disable-browser-autocomplete-on-web-form-field-input-tag ve temel pasta dokümanı sizin için yapmış olmalıydı. – Nunser

+0

Doğru, ancak bu durumda CakePHP kullanıcıları için hızlı bir başvuru istiyorum. Ben pastaya başladığım zaman, bununla uğraştım. – karns

cevap

4

Form yardımcılarına gönderilecek nitelikleri belirtebilirsiniz. 'Otomatik tamamlama' özniteliğini belirtin ve değerini 'kapalı' olarak ayarlayın. Ayrıca yerine her girişin tüm formunda bu yapabilir

<input name="data[Model][username]" autocomplete="off" class="pure-u-1-2" id="ModelUsername" type="text"> 

: HTML'nize için böyle bir şey sonuçlanan

... 

echo $this->Form->input('username', array(
    'label' => 'Please enter your username', 
    'class' => 'pure-u-1-2', 
    'autocomplete' => 'off' 
)); 
echo $this->Form->input('password', array(
    'label' => 'Please enter your password', 
    'class' => 'pure-u-1-2', 
    'autocomplete' => 'off' 
)); 

... 

. "= Çeşitli tarayıcılar artık otomatik tamamlama göz ardı eder

<form action=".../Model/Action" class="class" autocomplete="off" id="ModelActionForm" method="post" accept-charset="utf-8"> 

NOT:

... 

echo $this->Form->create('Model', array(
    'class' => 'class', 
    'autocomplete' => 'off' 
)); 

Bu HTML'nize size böyle bir şey verecektir: Sadece çok gibi oluşturmak şeklinde aynı özellik ve değer belirtin off "or autocomplete =" false ". Çözüm, formunuzdaki diğer tüm girdilerden önce gizli bir metin ve şifre alanı yerleştirmektir. Tarayıcılar, yalnız bırakmak istediğinizler yerine bunları dolduracaklardır.

0

iyi çözüm otomatik tamamlama = new-şifre kullanmaktır

O Chrome ve Firefox

Bunun gibi

büyük çalışır: CakePHP'de için soruyorsunuz çünkü

$this->Form->input('password', array('type' => 'password', 'autocomplete' => 'new-password')); 
İlgili konular