Телефон: +7 (926) 245-03-63

Безопасность PHP / MySQL / Apache

Следующая статья: Как передать значение кнопки с формы?

php, mysql, apache, конфигурирование, файл настроек, config file

Содержание

Вопросы

Итак были вопросы:

  • Есть у нас php скрипт, который обращается к MySQL базы данных.
  • Если мы впишем в скрипт, условно говоря, root mysql, то можем ли мы рассчитывать на безопасность действий (адекватность и однозначность написанных операций) с базой данных?
  • Можем ли мы рассчитывать на безопасное хранение пароля в php - скрипте?

1. Лучше создать еще одного пользователя в базе mysql и урезать ему права.

2. Все поключения к базе из PHP осуществлять через так называемые конфигурационные файлы. Отсюдова подробнее.

Итак для доступа в MySQL через PHP создаем файлы дополнительные (конфигурационные) файлы setup.php and config.php

file: setup.php

<?php
$sdd_db_host='db_host';
$sdd_db_name='db_name';
$sdd_db_user='db_user';
$sdd_db_pass='db_pass';
$admin_mail='твое@мыло';
?>

Правильное создание config.php

Далее создаем файл config.php

File config.php

<?php
function db_err($handle, $message)
{ echo "%s: %d: %sn", $message, mysql_errno($handle), mysql_error($handle);
  die();
}
function db_connect()
{ global $sdd_db_name,$sdd_db_user,$sdd_db_pass,$sdd_db_host;
  $dbh=mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
  if (!$dbh) { db_err($dbh,'mysql_connect'); }
  $res=mysql_select_db($sdd_db_name);
  if (!$res) { db_err($dbh,'mysql_select_db'); }
  return($dbh);
}  
?>

Проверка настроек

Потом выносим эти файлы за пределы сервера, и наконец подключаем эти файлы в тех файлах где будем работать с базой.

<?php
require('ваш_путь/setup.php');
require('ваш_путь/config.php');
?>

и в конечном итоге получаем красивый и вполне безопастный код.

$dbc=db_connect();
$sql='SELECT …';
$r=mysql_query($sql,$dbc);
Интересное в интернете: Новый ассортимент рыболовных товаров и снастей для рыбной ловли с доставкой.