Как сделать, что бы не очищались данные

Тема в разделе "PHP", создана пользователем Kewl, 19 сен 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Kewl

    Kewl

    Регистр.:
    9 сен 2007
    Сообщения:
    249
    Симпатии:
    107
    В джумле, мне сделали регистрацию расширенную, и сделали обязательные поля для ввода данных. Но крах в том, что если человек, забыл заполнить поле, выскакивает предупреждение, мол забыл указать фамилию, и потом, обновляется страница и все поля пустые, то есть того что он заполнял просто нету.

    Подскажите, как сделать, что бы все, что забито было, оставалось после предупреждения о незаполненных полях.

    Заранее спасибо
     
  2. SergXP

    SergXP Постоялец

    Регистр.:
    8 мар 2008
    Сообщения:
    66
    Симпатии:
    11
    Ну самый примитивный вариант: :D
    <form action="reg.php" method="POST">
    <input type="text" name="login" value="<?php echo $_POST['login']; ?>">
    <input type="text" name="email" value="<?php echo $_POST['email']; ?>">
    </form>

    конечно это не совсем правильно, но работать будет.

    а вообще, лучше пришлите сам файл шаблона с регистрационной формой и файл с ф-цией регистрации.
     
  3. pori

    pori Постоялец

    Регистр.:
    30 авг 2009
    Сообщения:
    114
    Симпатии:
    18
    Написать функцию-обработчик на JavaScript, которая будет вызываться при отправки формы. Эта функция будет обрабатывать правильность введенных данных, например так:

    Код:
    <script type="text/javascript">
    function cf() {
    	if	(document.my_form.login.value == "" || document.my_form.email.value == "") {
    		alert("Error!!!");
    		return false;
    	}
    	return true;
    };
    </script>
    
    <form name="my_form" action="reg.php" method="POST" onSubmit="return cf();">
    <input type="text" name="login" value="">
    <input type="text" name="email" value="">
    <input name="send" type="submit" id="send" value="РЕГИСТРАЦИЯ!" align="baseline">
    </form>
    Только вы, кажется, разделом ошиблись...
     
Статус темы:
Закрыта.