PHP-форма для отправки электронной почты и перенаправления на основе выпадающего списка - PullRequest
3 голосов
/ 25 августа 2011

Я искал способ настроить простую форму и перенаправить ее с помощью php. Я нашел похожие идеи, хотя ни на один из них не было ответа или они оказались слишком разными, чтобы работать в моей ситуации. Я очень новичок в этом, так что извините за незнание этого вопроса. Любая помощь, даже точка в правильном направлении, очень ценится.

Я хочу создать форму с одним текстовым полем (чтобы они могли ввести свое имя) и одним выпадающим списком, в котором будет указан список названий школ. Пользователь должен ввести свое имя, выбрать свою школу и затем нажать «Перейти» или «Отправить».

Как только я закончу, я хочу, чтобы форма делала две вещи. Отправьте электронное письмо с именем человека на предварительно определенный адрес электронной почты (всегда будет один и тот же адрес электронной почты), а затем перенаправьте страницу в зависимости от школы, выбранной в раскрывающемся списке. Как правило, электронное письмо с именами лиц и школой 1 будет отправлено на сайт www.address1.com, школа 2 - на сайт www.address2.com и т. Д. К тому времени, когда сайт будет заполнен, у меня может быть 30-40 школ, хотя я буду в конечном итоге только 10-12 адресатов, так как некоторые школы будут перенаправлены на те же адреса сайтов.

Еще раз спасибо за любую помощь, которую вы можете предложить.

Ответы [ 2 ]

2 голосов
/ 25 августа 2011

Надеюсь, это поможет:

<?php

if(isset($_POST['submit']))
{
    mail('you@example.com','Some subject',$_POST['name']);
    switch($_POST['school'])
    {
      case 'school1':
        header('Location: http://school1.com');
        break;
      case 'school2':
        header('Location: http://school2.com');
        break;
    }
}

?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <label for="name">Name:</label> <input name="name" type="text" id="name" />
    <label for="school">School:</label>
    <select id="school" name="school">
        <option value="school1">School1</option>
        <option value="school2">School2</option>
    </select>
    <input type="submit" name="submit" value="Submit" />
</form>
0 голосов
/ 25 августа 2011

Во-первых, поместите все свои школы в базу данных и создайте автоматический сценарий, который делает вас формой на основе входных данных базы данных. Из того, что вы написали, вам понадобится как минимум удостоверение личности, название школы и http-адрес школы.

Отправка электронного письма тривиальна и работает с функцией mail() - или с чем-то действительно необычным, например MIMEMail.

Перенаправление браузера работает с header('Location: <a href="http://schoolname1.com" rel="nofollow">http://schoolname1.com</a>'); - убедитесь, что до заголовка нет вывода (спасибо Тревису за упоминание этого)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...