Не работает форма PHP на моем сайте

0

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', '[email protected]');
define('MESSAGE_FROM_NAME', 'John Doe');
define('MESSAGE_TO_EMAIL', '[email protected]');

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);
}

Но когда я заполняю свой конец формы, введите enter, получите ошибку "not found contact.php". (Моя настоящая информация электронной почты находится в Gmail и открыта IMAP) Снова и снова я проверял свои данные, все в порядке.

Как я могу это исправить?

  • 1
    Находятся ли contact.php и html в одном каталоге?
  • 0
    Я не знаю, как выглядит ваша структура каталогов, но попробуйте изменить ее на ./contact.php. В противном случае убедитесь, что он указывает на каталог, в котором существует contact.php.
Показать ещё 2 комментария
Теги:
forms

1 ответ

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">

Ещё вопросы

Сообщество Overcoder
Наверх
Меню