2017-02-20 15 views
0

У меня есть 4 текстовых поля, которые вводят URL-адрес в качестве входных данных. Если пользователь пропустит все, будет сброшена ошибка, чтобы заполнить хотя бы один вход. Также проверяйте ввод пользователя, например, если он действительный URL. Как достичь этого Codeigniter 3.x?Проверка нескольких текстовых полей в codeigniter 3

ответ

0

Вы должны использовать входной тип = "URL", и поставить валидации (добавить validate.js файл для этого), как показано ниже:

вы можете получить validation.js здесь: Validation.js

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title>Add User</title> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script> 
</head> 
<body class="backgroundfff"> 
    <section> 
     <div class="padding0 main_padding" id="main_container"> 
      <div class="container-fluid padding0 bg-clr"> 
       <div class="container backgroundfff user-porfile-padding"> 
        <div class="col-lg-12 col-md-12 col-sm-9 col-xs-12 margintop20px marginbottom45px"> 
         <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 padding0"></div> 
         <div class="cp-box col-lg-6 col-md-6 col-sm-6 col-xs-12"> 
          <?php 
          $add_form = 
          array(
           'name' => 'advertiser-form', 
           "id" => "validateForm", 
           'method' => 'post', 
           'class'  => "form-horizontal", 
           'role' =>'form' 
           ); 
          echo form_open_multipart(DOMAIN_URL."users/adduser",$add_form); 
          ?> 
          <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 cyp-sub-title margintop20px"> 
           <input type="url" placeholder="Textbox 1" name="Textbox1" id="Textbox1" class=""> 
          </div> 

          <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 cyp-sub-title margintop20px"> 
           <input type="url" placeholder="Textbox 2" name="Textbox2" id="Textbox2" class=""> 
          </div> 

          <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 cyp-sub-title margintop20px"> 
           <input type="url" placeholder="Textbox 3" name="Textbox3" id="Textbox3" class=""> 
          </div> 

          <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 cyp-sub-title margintop20px"> 
           <input type="url" placeholder="Textbox 4" name="Textbox4" id="Textbox4" class=""> 
          </div> 

          <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 padding0 margintop20px marginbottom20px text-center"> 
           <button type="submit" class="cp-submit">Submit</button> 
          </div> 

          <?php echo form_close(); ?> 

         </div> 
        </div> 
       </div> 
      </div> 
     </div> 

    </section> 

</body> 
<script src="<?=DOMAIN_URL?>/js/validate.js" type="text/javascript" charset="utf-8"></script>  
</html> 

сервера проверки на стороне:

<?php  
function adduser($postData) 
{ 
    if(empty($postData['Textbox1']) || empty($postData['Textbox2']) || empty($postData['Textbox3']) || empty($postData['Textbox4'])) { 
     // redirect user to add form 
    } 
} 
?> 

Вы можете использовать FILTER_SANITIZE_URL проверить URL-адрес является действительным или нет, как показано ниже:

filter_var($posted_url, FILTER_SANITIZE_URL); 
+0

пардон, но здесь по крайней мере один текстовое поле будет заполнено, остальные являются необязательными. И для этого мне нужна проверка на стороне сервера. –

+0

но как вызвать эту функцию adduser ($ postData). –

+0

'echo form_open_multipart (DOMAIN_URL." Users/adduser ", $ add_form);' см. Это в моем ответе –