2017-12-26 15 views
0

私は成功していないものを達成しようとしています。base64_ phpを使用してフォームを送信してメールで送信するテキストエリアのコンテンツを

2つのフィールドを持つ連絡フォームがあります.1つはメールアドレスの入力で、もう1つはテキストエリアです。私は、このテキストをエンコードされたテキストに変換し、それを同じフォームに含まれているメールにメールで印刷しようとしています。

たとえば、私のフォームです。だから今、私は$メッセージでこの "clientMessage" を印刷してみましょう

HTML

<form action="email.php" method="post" class="form" id="form1"> 
      <input type="text" name="email" placeholder="Email..."> 
      <textarea class="textarea" name="clientMessage" placeholder="Write them something secret here, they won't know who wrote it" maxlength="120"></textarea> 
      <input type="submit" class="sendButton" id="sendButton" value="Send"> 
      </form> 

= "";私のmailer.phpのフォームに導入されたメールにそれを送信する。これまで私はメールを受け取ったが、コードはテキストとして受け取った。私が間違ってやっているのかわからない:

mailer.php

<?php 
$clientMessage= $_POST["clientMessage"]; 
echo base64_encode($clientMessage); 
$message = '<html><body>'; 

$message .= "echo base64_encode($clientMessage);"; 
$message .= "</body></html>"; 

$sender= $_POST["email"]; 

$to = $sender; 

$subject = 'Something for you'; 

$from = '[email protected]'; 

$fromEmail = '[email protected]'; 

$header = 'From: ' . $from . '<' . $fromEmail . '>'; 

mail($to, $subject, $message, $headers); 

header("Location: https://www.website.com/thanks.html"); 
exit; 
?> 

誰かが私が間違っ:)をやっているものを私に伝えることができますか?ありがとう!

答えて

1

すでにPHPになっているので、$message .= "echo base64_encode($clientMessage);"の出力はその文字列になります。ちょうど試してみてください$message .= base64_encode($clientMessage);

私はあなたが意味していたことを正しく理解していただきたいと思います。私が見つけた解決策は、まず、すべてが、リンクとして使用作成別の変数とのリンクを作成し、フォームからclientMessage転記のひとつ

PHP

$clientMessage= $_POST["clientMessage"]; 
$encodedMessage = "https://www.address.com/read.html?m="; 
$encodedMessage .= base64_encode($clientMessage); 

まず

+0

実際にそれはpal:D!どうもありがとう!! – Eugenio

+0

最初にウェブアドレスを含める場合はどうすればよいですか? shoudl be $ message。= 'https://www.website.com/index.html?m='+'base64_encode($clientMessage)'; – Eugenio

+0

あなたはそれを見つけたと思います。 :) –

0

ました第2のエンコードされたテキストの終了とを含む。うまく動作します!

関連する問題