Просто быстрый старт, чтобы поднять форму.
При создании вашего PHP-скрипта я мало что знаю о Dreamweaver, но если на вашем сервере установлен PHP, вы сможете создать его в том же каталоге, что и ваш HTML. Все элементы формы должны быть в теге формы и должны указывать на PHP, например <form method="POST" action="dosomething.php">
до и </form>
после.
Кроме того, "Please select your city..."
может быть неплохо иметь в форме, например <option value="unset">Please select your city...</option>
. (Кроме того, все параметры в образце должны иметь атрибут value
).
Я не знаю, как много вы узнали о PHP, поэтому я попытаюсь начать с основ. Сценарий PHP будет представлять собой простой текстовый файл с расширением .php
, например dosomething.php
. Внутри скрипта код PHP должен быть окружен начальным и конечным тегами PHP, <?php
и ?>
.
Значения, введенные в форму, должны быть доступны с помощью переменных $_POST
в PHP, поэтому в сценарии $_POST['select']
будет установлено текущее значение. Я рекомендую установить имена, которые вы можете запомнить, например, selectedCity
и emailAddress
.
В нашем PHP-скрипте мы хотим получить переменные из нашей формы и проверить, заполнены ли они оба. Затем данные будут записаны в базу данных. Ниже я создал образец фрагмента с комментариями, но следует добавить дополнительную безопасность, и этот код не должен использоваться как есть.
<?php
$city = $_POST['selectedCity']; // Get the city the user selected from the form
$addr = $_POST['emailAddress']; // Save the email address the user entered
if($city == "unset")
{
// Stops user if a city hasn't been selected
die("Please select a city."); // Stop executing code, and tell user to go back and select a city
}
if($addr == "")
{
// Stops user if the email address is blank (also would be good to make sure email address is correct, like user@domain.com)
die("Please enter a valid email address");
}
if(!file_exists("../mailinglist.sqlite"))
{
// Creates the database if it doesn't exist
// The database should be outside the document root (meaning you can't access it through the web)
$db = sqlite_open("../mailinglist.sqlite"); // Opens the database, creates it if non-existent (it is)
sqlite_query("CREATE TABLE users (city, email)"); // Creates a table for users
}
else
{
$db = sqlite_open("../mailinglist.sqlite"); // Opens the database if it exists
}
sqlite_query("INSERT INTO users (city, email) VALUES ('".sqlite_escape_string($city)."','".sqlite_escape_string($city)."')"); // Add the new user to the database
?>
(Все, что вам нужно, чтобы помочь с синим цветом, должно быть доступно для поиска в Документация PHP )
Приведенный выше код возьмет выходные данные из формы HTML, убедитесь, что она не пустая, и введите ее в базу данных, создав новую базу данных, если она не существует. Опять же, это всего лишь начало, и код должен быть улучшен, прежде чем он будет запущен.
Надеюсь, это поможет!