2015-11-25 7 views
-1

У меня проблема с очищающими входами. После того, как я нажимаю «Отправить» и получаю надлежащий ответ, или я обновляю страницу, текст, который я написал, до того, как останется на входах. Вы можете увидеть изображение в конце. Как это исправить? Какая строка отсутствует или у меня есть дополнительные строки?Устранение полей в форме

PHP код:

<?php 

if (!empty($_POST['ime']) && !empty($_POST['email']) && !empty($_POST['adresa']) && !empty($_POST['grad']) 
    && !empty($_POST['obrazovanje']) && !empty($_POST['osebi'])) { 

     //ubacivanje u bazu 
     $sql = "INSERT INTO zahtev (ime, email, adresa, grad, obrazovanje, osebi) 
      VALUES ('".htmlspecialchars($_POST['ime'])."', '".htmlspecialchars($_POST['email'])."', '".htmlspecialchars($_POST['adresa'])."', 
      '".htmlspecialchars($_POST['grad'])."', '".htmlspecialchars($_POST['obrazovanje'])."', '".htmlspecialchars($_POST['osebi'])."')"; 

      if ($conn->query($sql) == TRUE) { 
       echo "Podaci ubaceni.";  
      } else 
       { echo "Greska"; } 
     } 


     // definisanje promenjivih i postavaljanje vrednosti polja 
$imeErr = $emailErr = $adresaErr = $gradErr = $obrazovanjeErr = $polErr = $osebiErr = ""; 
$ime = $email = $adresa = $grad = $obrazovanje = $pol = $osebi = ""; 

if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    if (empty($_POST["ime"])) { 
    $imeErr = "Ime i prezime je obavezno polje"; 
    } else { 
    $ime = test_input($_POST["ime"]); 
    // proveri da li ime sadrzi samo slova i prazna polja 
    if (!preg_match("/^[a-zA-Z ]*$/",$ime)) { 
     $imeErr = "Dozvoljena su samo slova"; 
    } 
    } 

    if (empty($_POST["email"])) { 
    $emailErr = "Email je obavezno polje"; 
    } else { 
    $email = test_input($_POST["email"]); 
    // proveri da li je email ispravan 
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 
     $emailErr = "Pogresan email"; 
    } 
    } 

     if (empty($_POST["adresa"])) { 
    $adresaErr = "Adresa je obavezno polje"; 
    } else { 
    $adresa = test_input($_POST["adresa"]); 
    // proveri da li adresa sadrzi samo slova, brojeve i prazna polja 
    if (!preg_match("/^[a-zA-Z0-9 ]*$/",$adresa)) { 
     $adresaErr = "Dozvoljena su samo slova"; 
    } 
    } 

    if (empty($_POST["grad"])) { 
    $gradErr = "Grad je obavezno polje"; 
    } else { 
    $grad = test_input($_POST["grad"]); 
    // proveri da li grad sadrzi samo slova i prazna polja 
    if (!preg_match("/^[a-zA-Z ]*$/",$grad)) { 
     $gradErr = "Dozvoljena su samo slova"; 
    } 
    } 

    if (empty($_POST["obrazovanje"])) { 
    $obrazovanjeErr = "Grad je obavezno polje"; 
    } else { 
    $obrazovanje = test_input($_POST["grad"]); 
    // proveri da li obrazovanje sadrzi samo slova i prazna polja 
    if (!preg_match("/^[a-zA-Z ]*$/",$obrazovanje)) { 
     $obrazovanjeErr = "Dozvoljena su samo slova"; 
    } 
    } 

     if (empty($_POST["pol"])) { 
    $polErr = "Pol je obavezno polje"; 
    } else { 
    $pol = test_input($_POST["pol"]); 
    } 

    if (empty($_POST["osebi"])) { 
    $osebiErr = "Obavezno polje"; 
    } else { 
    $osebi = test_input($_POST["osebi"]); 
    // proveri da li polje o sebi sadrzi samo slova i prazna polja 
    if (!preg_match("/^[a-zA-Z ]*$/",$osebi)) { 
     $osebiErr = "Dozvoljena su samo slova"; 
    } 
    } 

} 

function test_input($data) { 
    $data = trim($data); 
    $data = stripslashes($data); 
    $data = htmlspecialchars($data); 
    return $data; 
}   

?> 

HTML код:

<!DOCTYPE html > 
<html> 
<head> 
    <title>Zahtev za clanstvo</title> 
     <!-- <script> 
     function myFunction() { 
     document.getElementById("podaci").reset(); } 
     </script> --> 
</head> 
<body> 

<form method="post" id = "podaci" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"> 
    <input type="text" name="ime" value="<?php echo $ime;?>" id = "ime" placeholder = "Ime i prezime:*"/> 
    <span><?php echo $imeErr;?></span> 
    <br><br> 

    <input type="text" name="email" id = "email" value="<?php echo $email;?>" placeholder = "Email:*"/> 
    <span><?php echo $emailErr;?></span> 
    <br><br> 

    <input type="text" name="adresa" id = "adresa" value="<?php echo $adresa;?>" placeholder = "Adresa:*"/> 
    <span> <?php echo $adresaErr;?></span> 
    <br><br> 

    <input type="text" name="grad" id = "grad" value="<?php echo $grad;?>" placeholder = "Grad:*"/> 
    <span><?php echo $gradErr;?></span> 
    <br><br> 

    <input type="text" name="obrazovanje" id = "obrazovanje" value="<?php echo $obrazovanje;?>" placeholder = "Obrazovanje:*"/> 
    <span><?php echo $obrazovanjeErr;?></span> 
    <br><br> 

    <input type="radio" name="pol" <?php if (isset($pol) && $pol=="female") echo "checked";?> value="zenski">Zenski 
    <input type="radio" name="pol" <?php if (isset($pol) && $pol=="male") echo "checked";?> value="muski">Muski 
    <span> <?php echo $polErr;?></span> 
    <br><br> 

    <input id = "dan" list="dan" name="dan" placeholder = "Dan rodjenja:*"> 
     <datalist id="dan"> 
     <option value="01"> 
     <option value="02"> 
     <option value="03"> 
     <option value="04"> 
     <option value="05"> 
     <option value="06"> 
     <option value="07"> 
     <option value="08"> 
     <option value="09"> 
     <option value="10"> 
     <option value="11"> 
     <option value="12"> 
     <option value="13"> 
     <option value="14"> 
     <option value="15"> 
     <option value="16"> 
     <option value="17"> 
     <option value="18"> 
     <option value="19"> 
     <option value="20"> 
     <option value="21"> 
     <option value="22"> 
     <option value="23"> 
     <option value="24"> 
     <option value="25"> 
     <option value="26"> 
     <option value="27"> 
     <option value="28"> 
     <option value="29"> 
     <option value="30"> 
     <option value="31"> 
     </datalist> 

    <input list="mesec" name="mesec" placeholder = "Mesec rodjenja:*"> 
     <datalist id = "mesec"> 
      <option value="Januar"> 
      <option value="Februar"> 
      <option value="Mart"> 
      <option value="April"> 
      <option value="Maj"> 
      <option value="Jun"> 
      <option value="Jul"> 
      <option value="Avgust"> 
      <option value="Septembar"> 
      <option value="Oktobar"> 
      <option value="Novembar"> 
      <option value="Decembar"> 
     </datalist> 

    <input list="godina" name="godina" placeholder = "Godina rodjenja:*"><br><br> 
     <datalist id = "godina"> 
      <option value="1970"> 
      <option value="1971"> 
      <option value="1972"> 
      <option value="1973"> 
      <option value="1974"> 
      <option value="1975"> 
      <option value="1976"> 
      <option value="1977"> 
      <option value="1978"> 
      <option value="1979"> 
      <option value="1980"> 
      <option value="1981"> 
      <option value="1982"> 
      <option value="1983"> 
      <option value="1984"> 
      <option value="1985"> 
      <option value="1986"> 
      <option value="1987"> 
      <option value="1988"> 
      <option value="1989"> 
      <option value="1990">] 
      <option value="1991"> 
      <option value="1992"> 
      <option value="1993"> 
      <option value="1994"> 
      <option value="1995"> 
      <option value="1996"> 
      <option value="1997"> 
      <option value="1998"> 
      <option value="1999"> 
      <option value="2000"> 
     </datalist> 


    <textarea name="osebi" rows="5" cols="15" id = "osebi" value="<?php echo $osebi;?>" placeholder = "O sebi:*"></textarea> 
    <span><?php echo $osebiErr;?></span> 
    <br><br> 

    <input type="submit" name="submit" value="Posalji" class="button" /> 
<!-- <input type="button" onclick="myFunction()" value="Reset form"> --> 

</form> 


</body> 
</html> 

enter image description here

ответ

0
function emptyForm(){ 
    var form = document.getElementBy('myForm'); 
    for(var input in form.children) input.value=''; 
    for(var select in form.children) select.selectedIndex = 42; // replace 42 with whatever you want, you can also use something else then selectedIndex. 
} 

Вы можете попробовать это.

Если вы хотите, чтобы другие элементы были очищены, но вы не можете понять это,
просто напишите комментарий.

+0

для вашей помощи ... проблема была в этой строке value = "" ... конечно, для всех входов, где я их положил ... теперь работает штраф ... –

1

Для этого, если страница загружается снова, вы можете использовать reset().

document.getElementById("podaci").reset(); 
+0

Подождите ... у вас было это, но это прокомментировано. Зачем? Вы можете использовать php, чтобы проверить, хотите ли вы напечатать js или нет, как вам нравится. – Clyff

+0

Я использовал эту строку, которую вы написали .... я прокомментировал, потому что она не работает для меня ... я вошел в информацию, нажав кнопку submit, и эта информация все еще стоит .... и я связан с моей кнопкой отправки ... но я буду повторите попытку ... спасибо ... –

+0

Вы должны вызвать js после вашей формы, вызвав ее, прежде чем она не будет работать. Или пусть он внутри функции там и вызовет функцию после вашей формы. Так же, как и кнопка «сбросить форму», которую вы прокомментировали. Или кнопка тоже не работает? – Clyff

Смежные вопросы