2

送信メールにファイルを添付できるようにしたい。これを行う方法のコードは、upload.php という別のファイルにありますが、index.php にすべて入れることができるかどうか知りたいです。index はフォーム アクションが指している場所だからです。機能するようにインデックスのどこに配置すればよいかわかりません...

このコードは index.php のセクションからのものです ($action = send-message):

case 'send-message':
    if(send_message($to, $cc, $subject, $message)) {
      echo "<p style=\"padding-bottom: 100px\">Message sent!</p>";
    } else {
      echo "<p style=\"padding-bottom: 100px\">Could not send message.</p>";
    }
break;

次に、新しいメッセージ (output.php) を作成するフォームを表示する次のコードがあります。

  <table cellpadding="4" cellspacing="0" border="0" width="<?php echo $table_width; ?>">
  <form action="index.php?action=send-message" method="post">
  <tr>
    <td bgcolor="#cccccc">To Address:</td>
    <td bgcolor="#cccccc">
      <input type="text" name="to" value="<?php echo $to; ?>" size="60" />
    </td>
  </tr>
  <tr>
    <td bgcolor="#cccccc">CC Address:</td>
    <td bgcolor="#cccccc">
      <input type="text" name="cc" value="<?php echo $cc; ?>" size="60" />
    </td>
  </tr>
  <tr>
    <td bgcolor="#cccccc">Subject:</td>
    <td bgcolor="#cccccc">
      <input type="text" name="subject" value="<?php echo $subject; ?>" size="60" />
  </tr>
  <tr>
    <td bgcolor="#cccccc">Upload a file:</td>
    <td bgcolor="#cccccc">
      <input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
      <input type="file" name="userfile" id="userfile"/>
      <input type="submit" value="Attach File">
    </td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#cccccc">
      <textarea name="message" rows="10" cols="72"><?php echo $message; ?></textarea>
    </td>
  </tr>
  <tr>
    <td colspan="2" align="center" bgcolor="#cccccc">
      <?php display_form_button('send-message'); ?>
    </td>
  </tr>
  </form>
  </table>

これが理にかなっていて、あまり混乱しないことを願っています! 助けてくれてありがとう!

4

1 に答える 1

-1

このすべてのロジックを 1 ページにまとめることはしません。特定のことを行う別のphpファイルに分けてみてください。また、独自のメール クラスなどを作成しないでください。 Zend_Mailなどの堅牢なものを使用してください。

それは、あなたのプロジェクトについて詳しく知らなくても、私ができる限りの助けです。

于 2011-10-21T18:54:01.470 に答える