簡體   English   中英

如果在 PHP 中使用其他程序需要有關此方面的幫助

[英]Need help regarding this if else program in PHP

<HTML>
  <body>

<?php
echo "<H4>Are you a Male</h4>"
 ?>
<form action ="ifstat.php" method ="post">
  Enter Please: <input type="text" name="val1">
  <input type ="submit" >
  <input type ="reset">
</form>

<?php
  $isMale=$_POST["val1"];
if($isMale =="y" || "yes"){
  echo("You are a Male");
} elseif($isMale =="n" || "no") {
  echo("You are a female");
} else{
  echo("Invalid entry");
}

?>
</body>
</html>

所以,這是我的程序代碼。 盡管我輸入了“n”或其他值而不是 y,但我總是繼續將 You are a Male 作為輸出。 這里的代碼有什么問題?

這是輸出的照片https://imgur.com/a/PPH49GK

您需要將條件格式從if($isMale =="y" || "yes"){更改為if($isMale =="y" || $isMale =="yes"){

<HTML>
  <body>

<?php
echo "<H4>Are you a Male</h4>"
 ?>
<form action ="ifstat.php" method ="post">
  Enter Please: <input type="text" name="val1">
  <input type ="submit" >
  <input type ="reset">
</form>

<?php
  $isMale=$_POST["val1"];
if($isMale =="y" || $isMale =="yes"){
  echo("You are a Male");
} elseif($isMale =="n" || $isMale =="no") {
  echo("You are a female");
} else{
  echo("Invalid entry");
}

?>
</body>
</html>

在你的if語句中......

if($isMale =="y" || "yes" ){

|| "yes" || "yes"是無效的,並且總是(在這種情況下)評估為真。

在處理此之前,您也不檢查是否輸入了任何內容,因此通常您會檢查是否設置了某些內容(即是否已提交表單),然后進行處理...

<?php
if (isset($_POST["val1"])) {
    $isMale=$_POST["val1"];
    if($isMale =="y" || $isMale =="yes"){
       echo("You are a Male");
    } elseif($isMale =="n" || $isMale =="no") {
       echo("You are a female");
    } else {
       echo("Invalid entry");
    }
}
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM