Ученик (105)

Почему PHP не создает два соединения к MySQL? Работа на локальной машине.

Код:


$db_hostRW = 'localhost';
$db_userRW = 'root';
$db_passRW = '';
$db_nameRW = 'db1';

$db_hostR = 'localhost';
$db_userR = 'root';
$db_passR = '';
$db_nameR = 'db2';

$dbRW = mysql_connect($db_hostRW,$db_userRW,$db_passRW);
$dbR = mysql_connect($db_hostR,$db_userR,$db_passR);

$res1 = mysql_select_db($db_nameR,$dbR);
$res2 = mysql_select_db($db_nameRW,$dbRW);


$dbR, $dbRW возвращают нормальные линки... А когда посылаю запрос типа:
mysql_query("SELECT * FROM `table` LIMIT 1",$dbR) - не работает. Пишет - таблица table не найдена. Хотя она в dbR есть, а в dbRW нет.
Регистрируйтесь, делитесь ссылками в соцсетях, получайте на WMR кошелек 20% с каждого денежного зачисления пользователей, пришедших на проект по Вашей ссылке. Подробнее
После регистрации Вы также сможете получать до 75 руб за каждую тысячу уникальных поисковых переходов на Ваш вопрос или ответ Подробнее
ОТВЕТЫ
Знаток (425)
У тебя данные соединений совпадают (хост, логин, пароль). Поэтому в $dbR возвращается просто указатель на $dbRW, и новое соединение не создается. Чтобы игнорировать это и принудительно создать новое соединение с теми же параметрами, надо написать:


$dbR = mysql_connect($db_hostR,$db_userR,$db_passR,true);


Это заставить создать в $dbR новое соединение.