Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > JavaScript+Access


Автор: hotdap 29.11.2012, 20:08

Подскажите, пожалуйста, ответ на следующий вопрос.

Существует приложение hta. В приложении используется JavaScript. Возможно ли из этого приложения обращаться к базе данных Access (добавление, просмотр ит.п.), расположенной локально на том же компьютере. 

Автор: Arantir 29.11.2012, 20:50
JS не может обращаться к базам данных. По той же причине, по которой запрещено делать запрос к не-своему домену. То есть запрос на какой-бы то ни было IP тоже делать нельзя, так как IP != имя домена. Нельзя сделать запрос на IP - нельзя обратится к БД.
localhost - это тоже IP, его псевдоним, псевдоним IP 127.0.0.1.
Короче, такова политика браузеров. Безопасности ради.

Для доступа к БД используйте серверные скрипты, например, php.

Автор: hotdap 29.11.2012, 21:01
У меня получилось соединиться с базой данных smile

Код

<html>
<head>
<title></title>
<HTA:Application
BORDER='normal'
INNERBORDER='no'
SINGLEINSTANCE='yes'
VERSION='1.0'
/>
<script language=javascript>
var fso=new ActiveXObject('Scripting.FileSystemObject');
var cn=new ActiveXObject('ADODB.Connection');
var rs=new ActiveXObject('ADODB.Recordset');
cn.open('Provider=Microsoft.JET.OLEDB.4.0;Data Source='+get_path()+'//'+'db1.mdb');
rs=cn.execute('select * from t1');
while(!rs.eof){
document.writeln(rs('name')+'');
rs.movenext();
};
document.writeln('');
cn.close();

function get_path(){
return fso.GetAbsolutePathName('');
};

</script>
</head>
<body bgcolor='#FFFFFF'></body></html> 

Автор: Arantir 29.11.2012, 21:08
Ага, жаль только, что это будет работать исключительно в IE =)
Впрочем, если лично для себя... но зачем тогда вообще JS лично для себя oO

Автор: hotdap 29.11.2012, 21:13
Программу делаю не только для себя - для работы (сотрудников отдела). Сеть только локальная, сервер не вариант устанавливать(жесткие правила безопасности).
Спасибо за участие, Arantir

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)