|
|
|
|
|
для: ONYX
(07.06.2008 в 06:23)
| | Я знаю что они должны быть поидеи, но когда я код с восклицательными знаками поставил , он у меня работал тупо , убрал и всё норм. , почему , незнаю! | |
|
|
|
|
|
|
|
для: lirik
(07.06.2008 в 03:17)
| | ТАМ НУЖНЫ ВОСКЛИЦАТЕЛЬНЫЕ ЗНАКИ!
Иначе код тупо работает в обратном направлении: принимает всякую чушь и пустые поля и не принимает правильно введенные данные. | |
|
|
|
|
|
|
|
для: ONYX
(07.06.2008 в 03:04)
| | только там восклицательные знаки не нужны !
function post(){
var fio = document.getElementById('fio').value;
var name = document.getElementById('name').value;
if(fio.match(/[^\w]+/im)){
document.getElementById('errFio').style.display = 'block'
return false;
}else document.getElementById('errFio').style.display = 'none'
if(name.match(/[^\w]+/im)){
document.getElementById('errName').style.display = 'block'
return false;
}else document.getElementById('errName').style.display = 'none'
}
|
| |
|
|
|
|
|
|
|
для: V@ldem@r
(06.06.2008 в 19:21)
| |
<html>
<head>
</head>
<style>
#errFio{display:none; color:#FF0000;}
#errName{display:none; color:#FF0000;}
</style>
<body>
<form name=form action="add.php" method="post">
<table>
<tr><td>Фамилия </td><td>
<input size=20 id="fio" type=text name=FIO value=''>
<div id="errFio">Неверно введена фамилия</div>
</td></tr>
<tr><td>Имя</td><td>
<input size=20 id="name" type=text name=name value=''>
<div id="errName">Неверно введено имя</div>
</td></tr>
<tr><td></td><td><input type="submit" onClick="return post()" value="Добавить"></td></tr>
</body>
<script>
function post(){
var fio = document.getElementById('fio').value;
var name = document.getElementById('name').value;
if(!fio.match(/[^\w]+/im)){
document.getElementById('errFio').style.display = 'block'
return false;
}else document.getElementById('errFio').style.display = 'none'
if(!name.match(/[^\w]+/im)){
document.getElementById('errName').style.display = 'block'
return false;
}else document.getElementById('errName').style.display = 'none'
}
</script>
</html>
|
| |
|
|
|
|
|
|
| Всем привет!
Не подскажит ли мне кто-нибудь как сделать так, чтобы при вводе данных в поле формы, если информация не удовлетворяет регулярному выражению, то ошибка выводилась на этой же странице, где находится форма. И чтобы страница не обновлялась.
У меня 2 скрипта:
1 скрипт (form.php)
<form name=form action="add.php" method="post">
<table>
<tr><td>Фамилия </td><td><input size=20 type=text name=FIO value=''></td></tr>
<tr><td>Имя</td><td><input size=20 type=text name=name value=''></td></tr>
<tr><td></td><td><input type=submit value='Добавить'></td></tr>
|
2 скрипт обработчик (add.php)
$FIO = $_POST['FIO'];
$name = $_POST['name'];
if(!preg_match("|^[\w]+$|i", $FIO))
exit("невeрный формат <p><a href=form.php?kod_abityra=$kod_abityra>Назад</a></p>");
if(!preg_match("|^[\w]+$|i", $name))
exit("невeрный формат имени<p><a href=form.php?kod_abityra=$kod_abityra>Назад</a></p>");
......
|
Ошибка выходит на новой странице и когда переходишь по ссылке "назад", то введенные данные исчезают, приходиться вводить все заново.
Как можно решить данную проблему? Я предполагаю, что скорее всего нужно все в одном скрипте делать, но пока не знаю как. | |
|
|
|
|