2016-07-06 62 views
0

下面是我有的代碼,它檢查文本框是否爲空,然後在文本框旁邊提交警告,一旦點擊提交。php - 停止php如果空文本框和處理其他html形式

<?php 
if(isset($_POST["submit"])) { 


    $fqdn = $_POST["fqdn"]; 
    $ip = $_POST["ip"]; 
    $fileText = $fqdn."\n".$ip; 
    $file = fopen("inputFile.txt","w"); 
    fwrite($file, $fileText); 
    fclose($file); 
} 
?> 
<form action = "<?php $_PHP_SELF ?>" method = "post"> 
      <table style= "width:400px"> 
       <tr class="spaceUnder"> 
        <td><b>FQDN:</b></td> 
        <td><input type="text" name="fqdn" placeholder="server.domain.com"/></td> 
        <td> <?php if(isset($_POST['fqdn']) && $_POST['fqdn'] == ''){ echo "<font color='red'>FQDN cannot be empty</font>";} ?> </td> 
       </tr> 
       <tr class="spaceUnder"> 
        <td><b>IP:</b></td> 
        <td><input type="text" name="ip" placeholder="***.***.***.***"/></td> 
        <td> <?php if(isset($_POST['ip']) && $_POST['ip'] == ''){ echo "<font color='red'>IP cannot be empty</font>"; } ?> </td> 
       </tr> 
       <tr> 
        <td align="center" colspan="2"> 
        <input type = "submit" name="submit" value="Submit"/> 
        </td> 
       </tr> 
      </table> 
      </form> 

點擊提交後,php仍然在寫入文件。如果我給退出()或返回false;在下面的步驟:

<td> <?php if(isset($_POST['fqdn']) && $_POST['fqdn'] == ''){ echo "<font color='red'>FQDN cannot be empty</font>"; exit();} ?> </td> 

表格變得不完整,意味着,IP文本框和提交按鈕將不存在。任何方式使它正確?

+0

你爲什麼不穿上提交代碼 –

+0

這一條件如果值是空曠的迴音否則警告執行代碼 –

+0

我們如何可以打印文本框旁邊的警告,如果我在提交的代碼塊。這雲幫助。 – Joshi

回答

1

所以我們在這裏。我們正在製作兩個變量來展示我們的錯誤。第一個變量是emty,因爲我們不知道我們發佈了什麼。在我們發佈數據後,我們可以看到帖子是否是emty。如果這篇文章是emty,我們會給變量分配一個錯誤信息並將其顯示到我們的表中。

$error_FQDN = ""; 
$error_ip = ""; 

if(isset($_POST["submit"])) { 
    if($_POST["fqdn"] == "" || $_POST["ip"] == ""){ 
     if($_POST["fqdn"] == ""){ 
      $error_FQDN = "FQDN cannot be empty!"; 
     } 
     if($_POST["ip"] == ""){ 
      $error_ip = "IP cannot be empty!"; 
     } 
    } else { 
     $fqdn = $_POST["fqdn"]; 
     $ip = $_POST["ip"]; 
     $fileText = $fqdn."\n".$ip; 
     $file = fopen("inputFile.txt","w"); 
     fwrite($file, $fileText); 
     fclose($file); 
    } 
} 

<form action = "<?php $_PHP_SELF ?>" method = "post"> 
    <table style= "width:400px"> 
     <tr class="spaceUnder"> 
      <td><b>FQDN:</b></td> 
      <td><input type="text" name="fqdn" placeholder="server.domain.com"/></td> 
      <td><?php echo $error_FQDN ?></td> 
     </tr> 
     <tr class="spaceUnder"> 
      <td><b>IP:</b></td> 
      <td><input type="text" name="ip" placeholder="***.***.***.***"/></td> 
      <td><?php echo $error_ip ?></td> 
     </tr> 
     <tr> 
      <td align="center" colspan="2"> 
      <input type = "submit" name="submit" value="Submit"/> 
      </td> 
     </tr> 
    </table> 
</form> 
+0

注意:未定義變量:顯示error_FQDN – Joshi

+0

您是否在請求代碼時放置了$ error_FQDN併爲其指定emty值? –

+0

是的。我已經給了它。仍然注意到 – Joshi

0

試試這個,

// Check for form submit and if fields aren't empty 
if(isset($_POST["submit"]) && $_POST['fqdn'] != "" && $_POST['ip'] != "") { 
    $fqdn = $_POST["fqdn"]; 
    $ip = $_POST["ip"]; 
    $fileText = $fqdn."\n".$ip; 
    $file = fopen("inputFile.txt","w"); 
    fwrite($file, $fileText); 
    fclose($file); 
} 

通過驗證FQDN和IP,如果值不爲空,如果情況將被執行。否則它不會運行。

+0

也需要警告。希望這將只是檢查空的領域。 – Joshi