簡體   English   中英

如果聲明PHP

[英]If statement PHP

在此代碼中,第一個和第二個控件不起作用!

我的想法是,如果其中一個字段為空,則會出現錯誤。 換句話說,所有字段都是期望的。

if(!empty($nome) && !empty($cognome) == 0)
    header("location: ./content_reg_comeunprodigio_no.html");
else if($dati_pers == 'n')
    header("location: ./content_reg_comeunprodigio_trattamentodati.html");
else
{
    $query = "INSERT INTO persons_comeunprodigio (nome, cognome)
                  VALUES ('$nome', '$cognome')";

    mysqli_query($db, $query) or die(mysqli_error());

    header("location: ./content_reg_comeunprodigio_ok.html");
}

預先謝謝你!

將if更改為

if(empty($ nome)|| empty($ cognome){

}

如果要測試空白字段。 如果字段不為空,則!empty()在兩種情況下(> 0)都將返回true,並且您期望等於0,我認為這與您的意圖相反。

您沒有提供足夠的有關$ dati_pers的信息來進行分析。

據我所知,您的比較!empty($nome) && !empty($cognome) == 0是元凶。 因為!empty($cognome)僅在$cognome不為空時== 0 ,可能不是您想要的。

您可以嘗試用兩個if塊替換if / else if / else塊。 增加了die(); 在標頭之后,因此PHP處理停止。 您可以按照評論者的建議保留if / else if / else塊。

if( empty($nome) || empty($cognome) ){
    // $nome or $cognome is empty
    header("location: ./content_reg_comeunprodigio_no.html");
    die();
}
if($dati_pers == 'n') {
    header("location: ./content_reg_comeunprodigio_trattamentodati.html");
    die();
}

$query = "INSERT INTO persons_comeunprodigio (nome, cognome)
              VALUES ('$nome', '$cognome')";

mysqli_query($db, $query) or die(mysqli_error());

header("location: ./content_reg_comeunprodigio_ok.html");

暫無
暫無

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

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