Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: В чем сущность программирования с использованием базы?

Сообщения:  [1-10]   [11-13] 

 
 автор: coloboc66   (16.10.2008 в 17:14)   письмо автору
 
   для: Владимир55   (16.10.2008 в 17:09)
 

можно ли сделать сайт, в котором бы была только БД? То есть, вообще без рнр-файлов?
Да сделать-то можно, только зачем он такой будет нужен? РНР-скрипты нужны, чтобы взаимодействовать с БД через веб-интерфейс.

  Ответить  
 
 автор: Владимир55   (16.10.2008 в 17:09)   письмо автору
 
   для: Dimka31   (16.10.2008 в 13:55)
 

Предположим, что структура намеченного к созданию сайта требует десять внутренних страниц. Означает ли это, что придестся создать 11 рнр-файлов (включая главную страницу), каждый из которых по мере необходимости средствами рнр будет обращаться к БД?

Иными словами, можно ли сделать сайт, в котором бы была только БД? То есть, вообще без рнр-файлов?

Или БД - это "примочка" к рнр-страницам? Хранилище с дополнительными фанкциями поиска, сортировки, удаления, инкрементами и т.п.?

  Ответить  
 
 автор: Dimka31   (16.10.2008 в 13:55)   письмо автору
 
   для: Владимир55   (16.10.2008 в 12:26)
 

Да обязательно.

Своего рода использование файлов, может заменить работу базы данных. Просто у базы данных уже создано много функций для работы с файлами данных, скорость повыше, безопастность, структурированность.
Все данные представляются ввиде таблиц. К которым очень легко получить доступ.
Представим, что в базе данных хранится данные абонентов(ФИО, Номер телефона, Баланс). нам нужно выбрать всех абонентов у который на балансе больше ста рублей. Мы так и напишем
Выбрать всех из таблицы абонетов, где баланс больше 100
Select * from abonents where balance>100

Получим массив из этих абонентов, с этим массивом в цикле и проведем действия по выводу на серверном языке)) Скажем PHP))


<?php
require_once("config.php");  // подключаемся к бд
$query "Select * from abonents where balance>100"// текст запроса
$abonents mysql_query($query); // выполняем запрос
for($i=0$i<@mysql_num_rows($abonents);$i++)
{
  echo 
mysql_result($abonents$i'name')."<br />"// выводим имя абонента, где name - название столбца, $i - номер индекса в массиве
}
?>

  Ответить  
 
 автор: Владимир55   (16.10.2008 в 12:26)   письмо автору
 
   для: cheops   (16.10.2008 в 11:12)
 

Спасибо, дело начинает проясняться...

require_once("config.php") при каждом обращении к базе?
Или, если на данной странице обращение уже было, то повторять это не надо?
Даже если прошли ?>, выполнили какое-то html действие и опять вошли в <?php , повторять require_once("config.php") не надо?

А если перешли на другую страницу, то в обязательном порядке выполняется require_once("config.php") ?

  Ответить  
 
 автор: cheops   (16.10.2008 в 11:12)   письмо автору
 
   для: Владимир55   (16.10.2008 в 10:51)
 

Можно отталкиваться от следующего скрипта
<html> 

<head> 
  <title>Первая страница</title> 
</head> 

<body> 
Страница начала работы. 
<?php 
  
// Устанавливаем соединение с базой данных
  
require_once("config.php");

  
// Обновляем счетчик в базе данных
  
$query "UPDATE tbl SET count = count + 1";
  @
mysql_query($query);

  
// Извлекаем состояние счетчика из базы данных
  
$query "SELECT count FROM tbl";
  
$cnt mysql_query($query);
  if(!
$cnt) exit("Ошибка обращения к базе данных - ".mysql_error());
  
$n_ip mysql_result($cnt0);

  echo 
"Общее количество посетителей - $n_ip"

?> 

</body> 

</html>

  Ответить  
 
 автор: Владимир55   (16.10.2008 в 10:51)   письмо автору
 
   для: Loki   (16.10.2008 в 10:31)
 

Похоже, что я настолько ничего не понимаю, что даже не могу толком сформулировать вопрос... Тогда поробуем опереться на пример.

Как можно реализовать вот такой код при использовании БД?

<html>

<head>
  <title>Первая страница</title>
</head>

<body>
Страница начала работы.
<?php
        $n_ip 
= @file_get_contents("nip.txt");    // Считываем общее количество посетителей
        
if (!$n_ip$n_ip ;                                  // Если это первый посетитель

        
++$n_ip;
        
$file fopen ($fstr "nip.txt""w") ;   // Очищаем файл
        
fputs ($file$n_ip) ;                        // Запись нового содержимого
        
fclose ($file) ;                               // Закрытие файла

        
echo "Общее количество посетителей - $n_ip";

?>

</body>

</html>

  Ответить  
 
 автор: Loki   (16.10.2008 в 10:34)   письмо автору
 
   для: Владимир55   (16.10.2008 в 10:29)
 

Если Вы знакомы с экселем, то проблем с реляционными БД, на первых этапах, у вас возникнуть не должно.

  Ответить  
 
 автор: Loki   (16.10.2008 в 10:31)   письмо автору
 
   для: Владимир55   (16.10.2008 в 10:00)
 

Ну если мы считаем что скрипты - это не статические страницы, то на сайте может не быть статических страниц совсем - весь сайт может храниться в БД и доставаться оттуда скриптом по мере необходимости. Как правило, это не вполне удобно, поэтому в БД хранят только данные, а на сайте - только скрипты и оформление.

  Ответить  
 
 автор: Владимир55   (16.10.2008 в 10:29)   письмо автору
 
   для: DEM   (16.10.2008 в 10:20)
 

ДЕНВЕР я использую, посмотрел.

Но все же: если при работе с файлами я пишу

        $file = fopen ("/nip.txt", "w") ;   // Очищаем файл
        fputs ($file, $n_ip) ;                        // Запись нового содержимого
        fclose ($file) ;                               // Закрытие файла

то при использовании базы нужно указать операторы обращения к базе, поиск аналога nip.txt и запись данных в него? Или как?

  Ответить  
 
 автор: DEM   (16.10.2008 в 10:20)   письмо автору
 
   для: Владимир55   (16.10.2008 в 10:00)
 

Базы Данных - это всё те же файлы... Вы можете установить у себя на компьютере ДЕНВЕР (что бы быстрее) и зайти по адресу: usr\local\mysql5\data
Вы увидите БД, как они лежат на сервере...

Из этого входит ответ на вопрос, что бы что-то вывести из БД нужно обязательно совершать какие-то SQL-запросы. Ну или, если сервер ваш, можете порпобовать поизвращаться с функцией fopen() :)

  Ответить  

Сообщения:  [1-10]   [11-13] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования