Передать db connector из скрипта в скрипт

Компьютеры, программы, периферия, коммуникации, интернет, программирование и т.п. Ранее назывался Hard-n-Soft.
Сообщение
Автор
ivkomn
Благодарил (а): 33 раза
Поблагодарили: 36 раз

№ 0 Сообщение ivkomn » 07 июл 2011 14:37

Привет,

Родительский скрипт вызывает дочерние скрипты, посредством AJAX загружает внутрь себя.
Родительский скрипт устанавливает соединение с базой данных, которое используется в дочерних скриптах.
Как передать коннектор к базе данных из родителя в потомок? GET/POST метода send от объекта XMLHttpRequest(AJAX), по ссылке/значению?

Инструменты: php(PDO к БД), html, JS.

Спасибо,

BadBlock
Аватара пользователя
Благодарил (а): 1586 раз
Поблагодарили: 8126 раз

№ 1 Сообщение BadBlock » 07 июл 2011 15:06

0: ivkomn:

Раз "дочерние скрипты" загружаются аяксом, значит, дело происходит уже в браузере.
На этом этапе есть только HTML и JS, никакого PHP в браузере нет.
"Передать соединение" через браузер нельзя, через GET- и POST-запросы ссылка на PHP-ресурс также не передаётся.
Не вижу никакой проблемы установить соединение в дочернем скрипте заново.

ivkomn
Благодарил (а): 33 раза
Поблагодарили: 36 раз

№ 2 Сообщение ivkomn » 07 июл 2011 15:08

Дочерних скриптов несколько штук а база данных одна.
Вижу целесообразным установить соединение один раз с последующим использованием.

BadBlock
Аватара пользователя
Благодарил (а): 1586 раз
Поблагодарили: 8126 раз

№ 3 Сообщение BadBlock » 07 июл 2011 15:10

2: ivkomn:
> Дочерних скриптов несколько штук а база данных одна.

Ну и что?

> Вижу целесообразным установить соединение один раз с последующим использованием.

В описанном случае это невозможно.

ivkomn
Благодарил (а): 33 раза
Поблагодарили: 36 раз

№ 4 Сообщение ivkomn » 07 июл 2011 15:11

Спасибо

ivkomn
Благодарил (а): 33 раза
Поблагодарили: 36 раз

№ 5 Сообщение ivkomn » 12 июл 2011 15:10

Many web applications will benefit from making persistent connections to database servers. Persistent connections are not closed at the end of the script, but are cached and re-used when another script requests a connection using the same credentials. The persistent connection cache allows you to avoid the overhead of establishing a new connection every time a script needs to talk to a database, resulting in a faster web application.

Example #5 Persistent connections
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
PDO::ATTR_PERSISTENT => true
));
?>
Note:

If you wish to use persistent connections, you must set PDO::ATTR_PERSISTENT in the array of driver options passed to the PDO constructor. If setting this attribute with PDO::setAttribute() after instantiation of the object, the driver will not use persistent connections.
------
http://www.php.net/manual/en/pdo.connections.php
дерьмо ваш PHP, кстати.

souphead
Аватара пользователя
Благодарил (а): 3 раза
Поблагодарили: 10 раз

№ 6 Сообщение souphead » 13 июл 2011 20:40

5: ivkomn:

Здесь речь о коннекте к базе из php, тоесть с серверсайд. Или ты именно об этом спрашивал ? А при чем тогда аякс ?

ivkomn
Благодарил (а): 33 раза
Поблагодарили: 36 раз

№ 7 Сообщение ivkomn » 13 июл 2011 22:31

Да, я спрашивал именно об этом.
Аякс - из расчёта возможных способов сделать запрос к серверу для вызова скрипта из скрипта.

BadBlock
Аватара пользователя
Благодарил (а): 1586 раз
Поблагодарили: 8126 раз

№ 8 Сообщение BadBlock » 18 июл 2011 15:31

5: ivkomn:
> Many web applications will benefit from making persistent connections to database servers.

And many will not, especially if your database server has limited simultaneous connections allowed. If query execution time is high and involves table lock, subsequent requests may be even blocked forever. If your server runs PHP in CGI mode, using persistent connections is totally useless, for they just won't keep as expected. (это всё от меня)

Так что перед применением надо сперва разобраться, есть смысл использовать это в конкретном случае или нет.

Да, и это не "передача соединения дочернему скрипту", это просто поддержание соединения всегда открытым, независимо, какой скрипт будет его использовать, "дочерний" или "не дочерний".

> дерьмо ваш PHP, кстати.

Просто кто-то ламер и программировать не умеет.

> Аякс - из расчёта возможных способов сделать запрос к серверу для вызова скрипта из скрипта.

Аякс не "вызывает скрипта из скрипта".
Аякс (а точнее, JavaScript) делает совершенно отдельный запрос из браузера на сервер.
Никаких PHP-скриптов из PHP-скриптов он не вызывает и вызывать не может.
Разобрался бы с базовыми вещами хоть для начала, прежде чем определения раздавать.

Вернуться в «Компьютерный форум»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость