Практика разработки Web-страниц

FrontPage не сохраняет данные из формы в базе данных


Используя компонент Save Results, FrontPage может помочь вам создавать бланки, необходимые для добавления записей в базу данных. Создав бланк с текстовыми полями и другими объектами для ввода данных посетителями, вы можете указать FrontPage сохранять информацию на бланке в базе данных. Если у вас ещё нет базы данных, подключенной к веб, FrontPage может создать базу данных Microsoft Access, чтобы хранить для вас результаты.


увеличить изображение
Если вы создали бланк на вашей странице, FrontPage напишет сценарий ASP для занесения информации в вашу базу данных

Чтобы сохранить результаты, FrontPage использует сценарий Active Server Pages (ASP) и соединяется с базой данных с помощью драйверов Open Database Connectivity (ODBC). Если ASP не работает, или если что-то не так с соединением, ваша страница бланка не работает. Вдобавок, если вы неверно установили параметры своего бланка, вы можете не получить нужный результат.

Чтобы избавиться от проблем и обеспечить пополнение базы данных, проделайте следующие шаги.

  1. Убедитесь, что вы правильно установили параметры бланка, указав расположение базы данных и полей для хранения данных. По умолчанию FrontPage отправляет содержание бланка в файл. Чтобы он отправлял его в базу данных, щелкните правой кнопкой по бланку, нажмите Form Properties, нажмите Send To Database, нажмите Options, затем выберите соединение с базой данных и таблицу для содержания ваших бланков. (Если у вас нет базы данных, нажмите Create Database, чтобы создать базу данных Access 2000. Если у вас есть база данных, но не создано соединение, щелкните Add Connection.)

    Чтобы упростить опознавание данных, содержащихся в полях вашего бланка, дайте полям осмысленные имена, прежде чем устанавливать связь с базой данных. Щелкните дважды по каждому полю и впишите название поля, например LastName или E-mail. Чтобы указать, в каком поле должна храниться каждая величина из бланка, выберите вкладку Saved Fields, затем щелкните дважды на каждом поле, чтобы указать нужное поле базы данных.





    увеличить изображение
    Устанавливая параметры бланка, вы указываете FrontPage, как сохранять информацию в полях базы данных

  2. Если файл вашей страницы не имеет правильного расширения, сценарий не заработает. Если его расширение .htm, щелкните правой кнопкой по файлу, нажмите Rename и смените его расширение на .asp.
  3. Если вы работаете со страницей, сохраненной у вас на диске без ASP, вы не сможете предварительно просмотреть страницу через броузер. (Вы можете использовать вкладку Preview во FrontPage, но бланк не будет выглядеть так же, как при публикации.) Чтобы использовать бланк, опубликуйте страницу и просмотрите её на сервере.
  4. Если FrontPage отображает сообщение об ошибке, когда вы проверяете соединение с базой данных, нажмите Details, чтобы прочитать сообщения, полученные им от драйвера ODBC. Должно быть, что-то не в порядке с конфигурацией вашего ODBC, информацией о соединении, или с самой базой данных. О решении проблемы см. раздел "Не удается создать соединение с базой данных во FrontPage".


  5. Если вы видите сообщение об ошибке при загрузке вашего бланка, это может указывать на проблему, решить которую вы можете, поменяв бланк или базу данных. Например, если ваша база данных рассчитана на числа, а вы пытаетесь ввести текст, вы увидите примерно такое сообщение об ошибке: "Cannot save value "This is a sentence." to data-base field "Number." Error Description: Type mismatch".

    Или, если ваша база данных запрашивает величину из какого-либо поля, а вы не указали его в своем бланке, вы увидите уже такое сообщение: "Cannot update the database. Error Description: [Microsoft][ODBC Microsoft Access Driver]Error in row".

    Убедитесь в наличии на бланке всех необходимых полей и используйте validation – метод, проверяющий, что посетители вводят допустимые значения. Сначала щелкните дважды по каждому полю и, если необходимо, введите величину в поле по умолчанию в окне Initial Value. Затем нажмите Validate, выберите величины в окошке Data Type, нажмите Required (если нужно) и дважды нажмите OK. Если вы не хотите добавлять поле в бланк, а база данных нуждается в нем, измените вашу базу данных, чтобы она поддерживала величины по умолчанию, или добавьте в бланк скрытое поле с подходящим значением. (В окне Form Properties нажмите Advanced.)

  6. Если ваш бланк все равно не отправляет данные даже после всех выше указанных изменений, вам, возможно, понадобится, чтобы FrontPage переделал сценарий базы данных. Для этого щелкните правой кнопкой на Form, нажмите Form Properties, нажмите Send To Other и нажмите OK. Затем повторите шаг 1.



Содержание  Назад  Вперед