我正在创建一个HTML用户表单,在提交后,它会被发布到PHP页面,以便在屏幕上打印用户在表单字段中输入的内容。
我的问题: 使用我现有的PHP脚本,它会写一个空行,HTML字段中没有数据。如果用户将HTML字段留空,我希望结果跳过整行。这可能吗?
我有一个非常标准的形式。我用$ _POST。 我目前使用这个:
<?php if (!empty($_POST['fax'])) {
echo "Fax "; echo $_POST['fax'];} ?><br>
但它留下了一个空白。结果应该是完整的电子邮件签名。它看起来像这样
Lisa Simpson
CEO
Board of Directors
Tel.: 213123
Fax: 123123
Mobile: 123123
我希望如果用户没有传真号码并将其留空,则应该如下所示:
Lisa Simpson
CEO
Board of Directors
Tel.: 213123
Mobile: 123123
感谢您提前提供任何帮助。
答案 0 :(得分:1)
检查$ _POST ['fax']变量的长度是否大于0,然后您将确定是否已设置。
if (strlen($_POST['fax']) > 0) {
echo "Fax: " . $_POST['fax'];
}
答案 1 :(得分:0)
问题是条件之外的<br>
标签ID,因此要么执行任何值<br>
将执行并给出空行。试试这样: -
<?php if (!empty($_POST['fax'])) {
echo "Fax "; echo $_POST['fax'].'<br>';} ?>
注意: - 您需要为所有!empty
条件执行此操作。谢谢。上面的代码仅在值存在时才给出新行,否则将不输出任何内容。
答案 2 :(得分:0)
我似乎发送了时间,导致空行。
哟可以使用:
来纠正它<?php if (!empty($_POST['fax'])) {
echo "Fax "; echo $_POST['fax']."<br>";
} ?>
答案 3 :(得分:0)
在if语句中移动<br>
标记
答案 4 :(得分:0)
Try This :-
<?php if (!empty($_POST['fax'])) {
echo "<br> Fax "; echo $_POST['fax'];} ?>
答案 5 :(得分:0)
优雅的方式
// binding data
$template = [
'key' => ['text', null]
'kye2' => ['text', null],
];
foreach ($_POST as $key => $value)
foreach ($template as $template_key => $template_value)
if ($key == $template_key)
$result[] = $template_value['1'] = $value;
//display data
foreach ($result as $field) echo $field['0'], ': ', $field['0'], '<br>';