PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic WEB разработка *NIX CouchDB Hack Python
Главная Статьи PHP PHP и MySQL на примере
Главная
 Главная  Контакты
 
Программинг
Статьи Книги ЧаВО
 
xBOOKi
Fresh Books Операционки Сети
 
Поиск
-------
 
Counters
Яндекс цитирования
Rambler's Top100
-------
 
CryptDisk.4h
Программа которая позволяет создать виртуальный шифрованный логический диск.

cryptdisk.4hack.com

-------
 
 

PHP и MySQL на примере

Mixailo

PHP, обзорная статья о котором есть на нашем сервере, умеет не только рассылать сообщения о том, что яблоки распространяются бесплатно. На самом деле это довольно мощная вещь, позволяющая создавать крупные коммерческие системы, в том числе и корпоративные информационные системы (естественно, вкупе с MySQL). Все это рано или поздно будет казаться довольно легким, но сейчас, как я полагаю, вы ограничились написанием скрипта-примера, который у вас не работает, потому что путь к sendmail (которого на Windows-платформах нет) указан неверно. Мне всегда казалось, что разобранный текст скрипта помогает всегда лучше, чем просто хелп...

Как вы знаете, с помощью великого и ужасного .htaccess можно настроить в качестве интерпретируемых как PHP файлов файлы с расширениями .php, .php3, .php4, .phtml (естественно, можно настроить и файлы .prikol, просто эти - наиболее часто используемые). Если желаете, можно даже считать таковыми файлы .html, достаточно просто прописать в .htaccess следующее:

Я крайне не рекомендую этого делать, советую называть файлы PHP так, чтобы расширением было .php. Эта рекомендация связана с тем, что файл .php явно является скриптом, в отличие от html, который запросто может и не содержать скриптовых включений (а нагрузка на сервер остается). По этой же причине я не советую и настраивать .html файлы на исполнение Includes (SSI), но тут уж выбор за вами. В крайнем случае в файл .shtml можно добавить PHP-включение стандартной директивой

<!--#include virtual="privet.php" -->

Ни коем случае не пытайтесь назначать файлы одного расширения сразу и на интерпретацию PHP, и SSI! Это приведет к непредсказуемым последствиям. Как вы уже догадались, подключение к MySQL производится двумя командами: сначала соединяемся с сервером MySQL, потом выбираем используемую базу данных, вот так:

Переменные, отвечающие за пароль, логин и прочее, лучше задавать отдельно. Собака перед командой означает то, что сообщения об ошибках этой команды не выводятся. Не забудьте потом закрыть соединение с MySQL!

mysql_close();

Вот так. Теперь самое интересное. Как выясняется, вы можете довольно просто манипулировать содержимым базы данных с помощью команды mysql_query. Например, мы создаем простую формочку с полями name, email и password:

После этого мы должны создать файл database.php, обрабатывающий эти данные. Нетрудно догадаться, что в нем мы будем иметь готовые переменные name, email, password, drop, del, которые и предстоит обработать. Обработка будет заключаться в том, что если галочка "Del" не установлена, то значение в БД добавляется, иначе - удаляются все такие значения (должны полностью соответствовать все три основных поля).

Это обычный выбор базы данных, интереса не представляет. Как известно, при попытке создать в БД таблицу, которая уже существует, сервер выдает ошибку. Поэтому можно довольно легко проверить таблицу на существование, и, если ее нет, создать ее:

Теперь проверяем, отмечена ли галочка del

if (empty($del))

И если она пуста, то добавляем значения в таблицу

Иначе пытаемся удалить значения, точно соответствующие шаблону:

Проверяем, написал ли пользователь в поле drop слово "drop", если да - удаляем из БД всю таблицу:

В принципе, теперь осталось только закрыть соединение и написать закрывающий тег ?>, но мы ведь хотим посмотреть, что у нас получилось? Делаем так:

Вот и все, простая программа манипуляции базой данных готова. Замечу, что восклицательный знак перед функцией означает логическое НЕ, т.е. !empty($line) означает "НЕ (пустая ли переменная $line?)", и будет иметь значение ИСТИНА (TRUE), если $line непустая. Функция extract(аргумент) выделяет из выдачи MySQL, которую мы не можем просто так распечатать, переменные, соответствующие названиям полей в таблице; в нашем случае это $name, $email, $password - так и называются поля в таблице clients.

Источник: http://webhowto.ru/

 



Свежее
Резервное копирование rsync-ом
DNS Amplification (DNS усиление)
Алгоритм Шинглов — поиск нечетких дубликатов текста
Metasploit Framework. Обзор
Использование CouchDB
-------



 
Copyright © 2003-2009   Frikazoid.
Rambler's Top100