Я создал общий PHP-скрипт, который будет использоваться для вызова AJAX.У меня есть имя пользователя и пароль для подключения mysql, хранящиеся в переменных SESSION.Чтобы начать тот же сеанс в этом сценарии ajax, я передаю идентификатор сеанса по почте сценарию ajax.Переменные передаются правильно, и я проверил, используя error_log
, что переменные SESSION имени пользователя и пароля являются правильными значениями.Вот ajax_script.php:
<?php
session_id($_POST['session_id']);
session_start();
mysql_connect('10.X.X.X',$_SESSION['username'],$_SESSION['password']);
$results = mysql_query($_POST['query']);
echo json_encode($results);
?>
Тем не менее, соединение не может быть установлено.Я проверил файл журнала, и это ошибка:
PHP Warning: mysql_connect(): Access denied for user 'username'@'25.1.1.1' (using password: YES) in /ajax_script.php on line 6, referer: http://25.1.1.1/index.php?option=com_content&view=article&id=180
Кто-нибудь знает, почему я не могу подключиться таким образом?
Ранее я делал подобный скрипт, но НЕ запускал тот же сеансссылаясь на session_id, как указано выше.Я передавал имена пользователей и пароли по почте, и связь работала.
Спасибо!
** РЕДАКТИРОВАТЬ ** Извините, я использовал неправильный IP для подключения mysql.работает следующий код:
<?php
session_start();
$ajax_connection = mysql_connect('10.X.X.X',$_SESSION['username'],$_SESSION['password']);
$result_set = array();
while ($result_set[] = mysql_fetch_assoc($results)){
// do nothing
}
echo json_encode($results);
?>