【问题标题】:If $_POST gives empty value make it 0如果 $_POST 给出空值,则使其为 0
【发布时间】:2022-06-15 22:20:44
【问题描述】:
$message .= "First name = ".$_POST['first-name']."\n";
$message .= "Last name = ".$_POST['last-name']."\n";
$message .= "Address line = ".$_POST['address-line']."\n";
$message .= "City = ".$_POST['city']."\n";
$message .= "State = ".$_POST['state']."\n";
$message .= "Country = ".$_POST['country']."\n";
$message .= "Postal code = ".$_POST['postal-code']."\n";

假设我提交了一个没有输入名字的表单

然后结果会像这样显示

First name = 
Last name = something
Address line = something
City = something
State = something
Country = something
Postal code = something

名字留空

现在我的问题是如何更改它,所以如果 $_POST 值为空,则为 0

让结果像这样显示

First name = 0
Last name = something
Address line = something
City = something
State = something
Country = something
Postal code = something

【问题讨论】:

标签: php html forms post html-post


【解决方案1】:

你可以这样做:

$message .= "First name = ".(isset($_POST['first-name']) && $_POST['first-name']!='' ? $_POST['first-name'] : 0)."\n";

它检查输入字段是否存在并且它不为空。如果是,则返回其值,否则返回整数 0。 但是,请记住始终清理用户的输入。

【讨论】:

    【解决方案2】:

    试试:

    if (!isset($_POST['first-name']) || $_POST['first-name']==''){
        $_POST['first-name'] = 0;
    }
    

    【讨论】:

    • 我怎样才能使这个适用于每个 $_POST 而不必指定 $_POST['first-name'] 和 $_POST['last-name'] 等
    • 很好的问题 - 但这是另一个问题。管理新问题的最佳方法是结束这个问题(通过选择首选答案)并提出一个新问题。在新问题中,您可以参考这个问题(只需添加一个指向问题 URL 的链接),在提出问题后,您可以在此问题下方添加新问题的 URL 的评论,我会看到并回复.
    【解决方案3】:

    你可以试试:if(!isset($_POST['first-name']) || $_POST['first-name']==''){$_POST{'first-name']=0 ;}

    【讨论】:

      猜你喜欢
      • 2017-11-27
      • 2017-09-01
      • 2013-09-01
      • 1970-01-01
      • 2021-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多