Для начала давайте не субмитить форму, если пользователь ничего не ввёл в поле ввода.
Для этого сначала нужно добавить полю ввода идентификатор, по которому можно к этому полю обращаться и с ним работать, в этой строке приписываем атрибут id:
Вообще, если кнопки типа submit в обработчике нажатия возвращает FALSE, то субмита формы не происходит — этим мы и воспользовались.
В следующий раз мы сделаем так, чтобы результат показывался на странице без обновления страницы, а сразу — для этого мы воспользуемся такой штукой как AJAX.
– сайт-проматерь-пропаперь. Когда в редакторе нет встроенного хелпа по PHP, удобно лазить сюда: (справка по php_uname())
– хотя сайт староват и давно не обновлялся, здесь много полезных кусков кода с подробными объяснениями. До сих пор пользую
– много не всегда качественных, но уже готовых к использованию PHP-классов. Выкладывать ваши наработки или нет – дело хозяйское. Я .
– тоже обновляется не часто, но советую перелопатить все имеющиеся здесь статьи по HTML, CSS и JavaScript.
– сайт, на страницах которого был выложен класс JsHttpRequest, реализующий AJAX, когда самого термина AJAX ещё не придумали. Автор явно человек с головой. Рекомендую .
Итак, рассмотрим пример веб-приложения со следующей функциональностью:
показать список товаров
подредактировать конкретный товар
удалить товар
добавить товаров
(12 Кб)
Для успешной работы приложения на вашей машине надо сделать следующее:
создать базу данных products (удобно через phpMyAdmin)
содержимое файла schema.sql скормить этой базе, в результате чего будет создана одноименная таблица
в файле server.php поправить данные (логин/пароль) для коннекта с базой
В принципе, большинство веб-приложений требуют реализации такой функциональности: вывести список элементов и редактировать их, так что эта базовая система может с минимальными доработками переделана под другую предметную область.
У кого что не получается – пишите в комменты, будем делиться опытом друг с другом.
P.S. Удобно дампить переменные (смотреть их содержимое) с помощью имеющегося в проекте класса , для этого надо сделать такой вызов: