0

リンクの末尾または請求書に配置される HTML コードのどこかに一意の ID を追加したいと考えています。リンクをクリックすると、取引条件に同意するページに移動し、確認メールが送信されます。Word で請求書を編集し、Word docx または PDF の両方でクライアントに送信できます。これらのドキュメントから仕事の ID または名前を抽出し、それをクリックしたリンクに追加し、その情報を確認メールと共に転送して、誰が条件に同意したかを追跡する方法はありますか?

メール確認用のコードは次のとおりです。

<?php
session_start();
if(!isset($_SESSION))
    session_start();

if(isset($_POST['Submit']) && $_POST['termsoftrade'] == 'termsoftrade') {
    $youremail = 'email@mail.com';
    $from = 'Invoice';
    $subject = "Terms accepted";
    $message = $_POST['message']; 
    $to = $youremail;
    $headers = 'From: ' . $from . "\r\n" . 'X-Mailer: PHP/' . phpversion(); 
    $body = 'xxx has accepted the terms of trade.'; 
}

$check = $_POST['termsoftrade']; 
if ($check==false) {
    include "errormsg.php";
} else {
    include "thanks.php";
    mail($to, $subject, $body, $headers);
}
?>
4

1 に答える 1

0

PDF からユーザー情報を取得するのは簡単なことではありません。.pdf の生成を制御できる場合は、GET を使用するのが最も簡単です。

必要なデータを含めて、ページに戻るリンクを作成します。ほとんどの PDF ビューアーではリンクをたどることができますが、ユーザーが必要に応じてカット アンド ペーストできるように、リンク全体を表示することをお勧めします。

link= mypage.php?uid=fsdhgfwyrt&checksum=kfgsdfgA

uid とチェックサムは、単純なアルゴリズムによって作成されます。

  1. あなたのuidに大きな数字を追加してください。数字の多いもの 例: 36183645290.
  2. 合計の base_64 エンコードを取得し、これを uid として送信します。
  3. uid 文字列に 40 文字を追加します。これの SHA1 ハッシュを取得し、base_64 でエンコードします。
  4. 最初の 8 文字をチェックサムとして送信します。

データを受信したら、逆の操作を実行します。

  1. base_64 でチェックサムをデコードします。
  2. 40 文字を uid に追加し (前と同じものです!)、SHA1 ハッシュを取得します。最初の 8 文字が一致する場合、あなたの uid はいじられていません。
  3. base_64 で uid をデコードする
  4. 元の大きなソルト数を減算し、uid を使用します。

次に、uid を使用してデータベースからユーザー情報を抽出し、フォームに事前入力します。

于 2013-06-22T22:18:48.070 に答える