在我的网站上不使用PHP表单

时间:2014-03-13 14:04:42

标签: php html forms

HTML:

<form class="contact-form footer-form" method="post" action="contact.php">
...
</form><!-- /.footer-form -->

contact.php:

<?php

/******************************************************************
 * Requirements
 ******************************************************************/
require_once 'libraries/swift/lib/swift_required.php';

/******************************************************************
 * Constants
 ******************************************************************/
define('MESSAGE_SUBJECT', 'Subject');
define('MESSAGE_FROM_EMAIL', 'john@doe.com');
define('MESSAGE_FROM_NAME', 'John Doe');
define('MESSAGE_TO_EMAIL', 'john@doe.com');

define('TRANSPORT_SERVER', 'smtp.example.com');
define('TRANSPORT_PORT', 25);
define('TRANSPORT_USERNAME', 'username');
define('TRANSPORT_PASSWORD', 'password');

/******************************************************************
 * Configure transport
 ******************************************************************/
$transport = Swift_SmtpTransport::newInstance(TRANSPORT_SERVER, TRANSPORT_PORT)
    ->setUsername(TRANSPORT_USERNAME)
    ->setPassword(TRANSPORT_PASSWORD);
$mailer = Swift_Mailer::newInstance($transport);

/******************************************************************
 * Send email
 ******************************************************************/
if (!empty($_POST['email']) && !empty($_POST['name']) && !empty($_POST['message'])) {
    $body = sprintf("Email: %s \nName: %s\nBody: %s", $_POST['email'], $_POST['name'], $_POST['message']);

    $message = Swift_Message::newInstance()
        ->setSubject(MESSAGE_SUBJECT)
        ->setFrom(array(MESSAGE_FROM_EMAIL => MESSAGE_FROM_NAME))
        ->setTo(array(MESSAGE_TO_EMAIL))
        ->setBody($body);

    $mailer->send($message);
}

但是当我填写表格结束时输入,得到'找不到contact.php'错误。 (我真正的电子邮件信息在Gmail上并打开了IMAP)我一次又一次检查了我的详细信息,一切正常。

我该如何解决?

1 个答案:

答案 0 :(得分:2)

您指的这两个文件是否在同一目录中?尝试将contact.php更改为/contact.php,如下所示

<form class="contact-form footer-form" method="post" action="/contact.php">

或者,只需要一个完整的uri

<form class="contact-form footer-form" method="post" action="FULLURL/contact.php">