2013-06-12 58 views
1

在此站點Site有4個複選框。此時複選框值不會顯示在電子郵件中。 需要做些什麼才能獲得電子郵件中的複選框值?在電子郵件中顯示覆選框值

這是整個代碼kontakt.phpsendmail.class.php

kontakt.php:

<form action="kontakt.php" method="post"> 
    <label for="name">Ihr Name:</label> 
    <input type="text" class="get1" name="name" value="<?php echo htmlspecialchars($_POST['name']); ?>" /> 
    <br /> 
    <label for="phone">Telefonnummer (bitte nur Ziffern):</label> 
    <input type="text" class="get1" name="phone" value="<?php echo htmlspecialchars($_POST['phone']); ?>" /> 
    <br /> 
    <label for="email">E-Mail-Adresse:</label> 
    <input type="text" class="get1" name="email" value="<?php echo htmlspecialchars($_POST['email']); ?>" /> 
    <br /> 
    <label for="message">Ihre Mitteilung an uns:</label> 
    <textarea cols="20" rows="5" name="message"><?php echo htmlspecialchars($_POST['message']); ?></textarea> 
    <br /> 
    <label>Welche Leistungen interessieren Sie besonders?</label> 
    <label style="display:inline;" for="dachstuehle">Dachstühle</label> 
    <input class="kaestchen" type="checkbox" name="interessen[]" id="dachstuehle" value="dachstuehle" /> 
    <label style="display:inline;" for="holzbau">Holzbau</label> 
    <input class="kaestchen" type="checkbox" name="interessen[]" id="holzbau" value="holzbau" /> 
    <label style="display:inline;" for="innenausbau">Innenausbau</label> 
    <input class="kaestchen" type="checkbox" name="interessen[]" id="innenausbau" value="innenausbau" /> 
    <label style="display:inline;" for="trocken">Trockenbau</label> 
    <input class="kaestchen" type="checkbox" name="interessen[]" id="trockenbau" value="trockenbau" /> 
    <br /><br /> 
    <input type="hidden" value="1" name="s" /> 
    <input type="submit" value="Nachricht versenden" name="submit" /> 
</form> 

sendmail.class.php:

<?php 
class sendMail { 
    var $to = 'email'; // set contact email 
    var $name = ''; 
    var $phone = ''; 
    var $email = ''; 
    var $body = ''; 
    var $interessen = ''; 
    var $error = array(); 
    var $headers = array(); 

    function parseBody() { 
     $message = '<html><body>'; 
     $message .= '<table rules="all" style="border-color: #666;" cellpadding="10">'; 
     $message .= '<tr style="background-color: #eee;"><td><strong>Name:</strong> </td><td>' . $this->name . '</td></tr>'; 
     $message .= "<tr><td><strong>Telefonnummer:</strong> </td><td>" . $this->phone . "</td> </tr>"; 
     $message .= "<tr><td><strong>E-Mail-Adresse:</strong> </td><td>" . $this->email . "</td></tr>"; 
     $message .= "<tr><td><strong>Text:</strong> </td><td>" . $this->body . "</td></tr>"; 
     $message .= "<tr><td><strong>Interessiert an:</strong> </td><td>" . $this->interessen . "</td></tr>"; 
     $message .= "</table>"; 
     $message .= "</body></html>"; 
     $this->body = $message; 
    } 

    function send() { 
     if ($this->error) { 
      return FALSE; 
     } 

     if (mail($this->to, '=?utf-8?B?' . base64_encode($this->subject) . '?=', $this->body, $this->headers)) { 
      return TRUE; 
     } else { 
      $this->error[] = 'Fehler beim senden'; 
      return FALSE; 
     } 
    } 

} 
?> 

這是整個代碼kontakt.phpsendmail.class.php

+0

你想如何讓他們顯示在電子郵件?逗號分隔? – KyleK

+0

interessen將是一個數組,看起來像你把它當作一個字符串處理?而在全班學生中,我不知道你在哪裏設置這個價值。 – somedev

+0

在你的'sendmail.class.php'中,你不需要檢索'$ _POST ['interessen']'',它是一個數組。您需要將其添加到加載後值的函數中,並在其上調用'implode()'來返回一個字符串。 –

回答

1

簡單...

因此,只要把你的setParams()獲取方法是這樣.....

function setParams($post) 
    { 
    $this->interessen = implode(", ",$post['interessen']); 
    //REST OF SETPARAMS STUFF...leave alone 
} 
在parseBody()

則...

確保呼應 'interessen' 行..是這樣的...

$message .= "<tr><td><strong>Interessiert an:</strong> </td><td>". $this->interessen ."</td> 

它在你的例子上面。

+0

好吧,我檢查它,如果它工作我會接受你的回答。 –

+0

只是一個問題:去哪裏$ string = implode(「,」,$ this-> interessen);?我在PHP中並不那麼先進。 –

+0

它給了我錯誤消息:警告:implode():無效參數傳遞在/mnt/web3/a2/69/53523169/htdocs/das-bauteam/php/sendmail.class.php在53行警告:無法修改標題信息 -/mnt/web3/a2/69/53523169/htdocs /中已經發送的頭文件(輸出在/mnt/web3/a2/69/53523169/htdocs/das-bauteam/php/sendmail.class.php:53開始)第11行的das-bauteam/kontakt.php –