|
|
|
| Здравствуйте.
Как подключится к MySQL, для создания записей, изменения существующих и их удаления, через функцию?
Смысл таков:
<?php
// Подключение к базе данных:
function connect_mysql ( )
{
// connect..
}
// Отключение от базы данных:
function disconnect_mysql ( )
{
// disconnect..
}
?>
|
<?php
function insert_mysql ( $insert )
{
// Подключение к базе данных:
$boolean = connect_mysql ( );
// Запись переданных значений;
if ( $boolean )
{
// insert..
}
// Отключение от базы данных:
disconnect_mysql ( );
}
?>
|
<?php
// Запись в базу данных:
$boolean = insert_mysql ( $insert );
if ( ! $boolean ) echo'Ошибка. Запись не произведена.';
?>
|
Меня-то, собственно, интересует узнать, что нужно написать вместо // connect.. и // disconnect.. | |
|
|
|
|
|
|
|
для: Yaeaeo
(11.11.2012 в 02:50)
| | Задача здесь такая.
Есть ряд программистов. Им есть доступ к папке на сервере, где они могут размещать все свои файлы-скрипты, но подключения к MySQL там нет. Чтобы производить запись, редактирование и удаление данных есть функции, и они не могут выйти за пределы разрешённого. Правда, подключение к базе постоянное в самом начале главного исполнительного скрипта, внутрь которого они записывают свои доработки. То есть, при желании (хоть и не разрешено), они могут писать прямые MySQL-команды. Если сделать подключение к базе только внутри самих функций, то было бы безопаснее. | |
|
|
|
|
|
|
|
для: Yaeaeo
(14.11.2012 в 18:35)
| | А какой в этом смысл, если они могут передавать серверу, а сервер выполнять написанные ими же команды?
От чего вы хотите оградиться и как?
Допустим подключается у программистов скрипт к мускулу только при необходимости. И что с того?
Что значит "выйти за пределы разрешённого"? Каким образом вы ограничили эти пределы? | |
|
|
|
|
|
|
|
для: Sfinks
(14.11.2012 в 19:07)
| | Передать через функцию лишь можно:
1) Тип действия (запись, удаление и так далее).
2) Название таблицы.
3) Массив Поле=>Значение.
4) Пароль для функции, который есть у каждого программиста.
<?php
$db = db (
'delete' ,
'accounts' ,
array (
'id' => 55
) ,
'17jbcfLYQsaFCyJlC'
);
if ( $db )
{
echo'Пользователь удалён.';
}
else
{
echo'Ошибка.';
}
$db = db (
'insert' ,
'messages' ,
array (
'id' => 'NULL' ,
'author' => $user [ 'id' ] ,
'message' => $_POST [ 'message' ] ,
'time' => time ( )
) ,
'17jbcfLYQsaFCyJlC'
);
if ( $db )
{
echo'Сообщение записано.';
}
else
{
echo'Ошибка.';
}
?>
|
| |
|
|
|
|
|
|
|
для: Yaeaeo
(14.11.2012 в 19:43)
| | Зачем команда программистов в проекте, в котором можно обойтись запросами типа INSERT papa TO mama ?
Вы хоть представляете, на что способна БД, что вы вот так легко выбрасываете все это в помойку и перекладываете на медленный ПХП? | |
|
|
|
|
|
|
|
для: Sfinks
(15.11.2012 в 00:04)
| | А как? Дать безграничную возможность сотрудникам, включая тех, кто только вливается в команду, записывать что угодно в БД? Скажите идеи, я с удовольствием вычитаю их все. Правда. Я без сарказма говорю. | |
|
|
|
|
|
|
|
для: Yaeaeo
(15.11.2012 в 01:40)
| | Во-первых есть встроенный механизм регулирования доступа - это привелегии пользователя БД, где вы можете пользователю запретить хоть все, кроме селекта.
Во вторых Что это у вас программисты пишут в базу и удаляют из нее? Программисты разве не программы пишут? Они должны обеспечить интерфейс управления базой, чтоб писать в нее и удалять из нее могла девочка без программистского образования, только щелкая по кнопкам и только то, что разрешено ПРОГРАММИСТОМ.
В третьих - программисту для разработки не нужна реальная база.... Для тестирования достаточно сохраненного дампа базы. И хоть каждые 3 минуты пиши в него, стирай и восстанавливай.
В четвертых - уж запросы, которые там понастрочили в программе программисты, можно и самому проверить, если никому кроме себя не доверяете, и только после этого запустить апгрейд в работу на реальной базе.
Ну и в конце концов, заключите трудовые договора, пропишите в них штрафы, заберите трудовые, снимите копии паспортов, дайте подписать обязательство о неразглашении, запугайте санкциями, и контролируйте, контролируйте, контролируйте. | |
|
|
|
|
|
|
|
для: Sfinks
(15.11.2012 в 02:24)
| | Я тоже подумывал о внутренней базе данных.
А в случае успешных тестов переводить файлы на настоящий сайт.
P. S. Последний абзац страшно звучит для сотрудников ) | |
|
|
|
|
|
|
|
для: Yaeaeo
(15.11.2012 в 02:34)
| | Сотрудники обязаны знать, что любые действия во вред фирме будут иметь последствия.
Что саботаж не будет бесплатным.
А для тех, кто намерен честно работать - он никак не звучит. | |
|
|
|
|
|
|
|
для: Sfinks
(15.11.2012 в 08:29)
| | Демократия в управлении Вам, наверно, несвойственна. Авторитаризм, скорее ) | |
|
|
|
|
|
|
|
для: Yaeaeo
(15.11.2012 в 10:03)
| | Ну а вы предлагаете электроошейник? Вроде поводка не видно, но за границу нельзя. И при этом электричества расходуется вагон. Да еще кто поумнее снимет.
Какая демократия? Наемные рабочие должны работать по установленным правилам. Устройте демократию на каком-нибудь складе... Все грузчики будут пьяные и грузить только когда вы им премию пообещаете. А пообещайте за запах спиртного штраф либо увольнение - и картина тут же изменится =) | |
|
|
|
|
|
|
|
для: Sfinks
(15.11.2012 в 13:43)
| | Что-то в крайности уже.. И я-то как раз, помягче предлагал, а не пожёсче ) | |
|
|
|