仅当数据库中存在值时才在消息中显示文本

时间:2016-06-03 09:22:35

标签: php database optional dynamic-html

我的网站上有人们可以预订的课程。有些课程允许"ratenzahlung"(延期付款)。一切都在网站的前端工作正常。仅当数据库中存在值时,才会显示字段"ratenzahlung"。以下是我用于前端显示的代码:

break;
                case 'ratenzahlung': 
                $ratenzahlung = $course_options['ratenzahlung'];
                if($ratenzahlung != ''){
                    echo '<div class="gdlr-lms-info" >';
                    echo '<span class="head">' . __('Ratenzahlung', 'gdlr-lms') . '</span>';
                    echo '<span class="tail">';
                    echo $ratenzahlung;
                    echo '</span>';
                    echo '</div>';
              }

在人们注册课程后,他们会收到一封确认电子邮件,其中包含课程的详细信息。如果字段"ratenzahlung"中有值,则应该使用此值获取电子邮件。但如果字段"ratenzahlung"中没有任何内容,则电子邮件不应在"ratenzahlung"行显示任何文字。

这不能正常工作。即使数据库中没有"you chose ratenzahlung"值,人们也会获得行ratenzahlung,并且前端也没有显示任何内容。 这是我使用过的代码:

Ratenzahlung: ".$course_options['ratenzahlung']."";
                        if(isset($_POST['ratezahlung']) && $_POST['ratezahlung'] == 1){
                            $msg.=" <br><p>Sie haben Ratenzahlung ausgew&auml;hlt.</p>";
                        }

有人可以帮我吗?我应该更改什么才能正确生成电子邮件?

1 个答案:

答案 0 :(得分:0)

<input type="text" name="ratezahlung">

提交表单后,使用以下代码检查值是否存在

$yourmessage = 'Your-default-message'; //if you dont want to pass any data just leave it blank
if(isset($_POST['ratezahlung'] && trim($_POST['ratezahlung'] == 1){
$yourmessage = 'Ratenzahlung : My-message-for-true-case';
}

希望它可以解决你的问题...