контакт форма

tini4ka

Registered
Гледах един урок от сайта и направих това :
<form name= "form" action="" method="POST">
<span>Вашето име:</span>
<div class="inputText"><fieldset><input type="text" name="from" /></fieldset></div>
<span>Вашия е-мейл:</span>
<div class="inputText"><fieldset><input type="text" name="email" /></fieldset></div>
<span>Относно:</span>
<div class="inputText"><fieldset><input type="text" name="subject" /></fieldset></div>
<span>Съобщение</span>
<div class="inputArea"><fieldset><textarea name="message"></textarea></fieldset></div>
<div class="buttons">
<fieldset><input type="reset" class="btn" value="Изчисти" /></fieldset>
<fieldset><input type="submit" onClick="proverka()" class="btn" value="Изпрати" name="submit" /></fieldset>
</div>
</form>

<script language="JavaScript" type="text/javascript">
function proverka()
{
if(document.form.from.value=="")
{
alert("Попълни поле Вашето име");
document.form.from.focus();
}
else {
if(document.form.email.value=="")
{
alert("Попълни поле Вашия е-мейл ");
document.form.email.focus();
}
else {
document.form.submit();

}


}


}
</script>
Обаче, когато даде съобщение напримет Попълни поле Емайл , затворим съобщението и ни върне към формата , всичко написано до момента се занулява, как да оправим този проблем ?
 
Здрасти. Мога да ти напиша няколко кода , но с DB и съобщенията се записват на отделна страница, до която се влиза само с ПАРОЛА!
Ако те устройва, кажи ще го напиша като урок :)
 
Освен проверка с JavaScript, трябва да направиш проверка и на сървъра, защото проверката с JavaScript само много лесно може да се заобиколи и да се въведат общо взето всякакви данни.

Показване на съобщение с alert е може би най-неприятния начин за маркиране на грешка. Това беше популярно преди време, сега вече не е.

Много по-качествено би било, ако използваш jQuery, за да изписваш евентуалните грешки под формата на текст или tooltip някъде около полето.
 
bytheway дай ми пример, все пак не ми е ясно, правя първи стъпки в javascript

и друго което забелязвам, е че в моя код дори и да изведе съобщение, че не е въведено поле то пак си го изпраща ...
 
Проблема ти е при скрипта. Когато искаш да провери полетат и да не изпраща формуляра трябва да му връщаш false.
Ето ти кратък пример:
PHP:
<script language="Javascript">
function check(){
  var pole=document.formulqr.pole.value;
  if(pole.length<5){
     return false;
  }else{
    var q=confirm('Да изпратя ли формуляра');
    return q;
  }
}
</script>
<form method='POST' name='formulqr'>
  <input type='text' name='pole'/>
  <input type='submit' name='submit' value='Изпрати' onClick='return check()'/>
</form>
 
emcuemnecu каза:
Здрасти. Мога да ти напиша няколко кода , но с DB и съобщенията се записват на отделна страница, до която се влиза само с ПАРОЛА!
Ако те устройва, кажи ще го напиша като урок :)

Направи го ако може :?:
 
GOTI каза:
emcuemnecu каза:
Здрасти. Мога да ти напиша няколко кода , но с DB и съобщенията се записват на отделна страница, до която се влиза само с ПАРОЛА!
Ако те устройва, кажи ще го напиша като урок :)

Направи го ако може :?:
Добре. Утре вечер след работа сядам да го драсна и обясня кое какво служи и как работи заедно с демо линк :)
 

Back
Горе