JavaScript может соединиться с MySQL?

JavaScript может соединиться с MySQL? Если так, как?

104
задан Konerak 11 June 2010 в 07:21
поделиться

6 ответов

Нет, JavaScript не может напрямую подключаться к MySQL. Но для этого вы можете смешивать JS с PHP.

JavaScript - это клиентский язык, и ваша база данных MySQL будет работать на сервере

23
ответ дан 24 November 2019 в 04:10
поделиться

JavaScript не может напрямую подключаться к БД для получения необходимых данных, но вы можете использовать AJAX. Чтобы сделать простой AJAX запрос к серверу, вы можете использовать jQuery JS framework http://jquery.com. Вот небольшой пример

JS:

jQuery.ajax({
type: "GET",
dataType: "json",
url: '/ajax/usergroups/filters.php',
data: "controller=" + controller + "&view=" + view,
success: function(json)
{
    alert(json.first);
    alert(json.second);
});

PHP:

$out = array(); 
$out['first']   = 'first value';
$out['second']   = 'second value';
echo json_encode($out);
0
ответ дан 24 November 2019 в 04:10
поделиться

Вы можете подключиться к MySQL из Javascript через апплет JAVA. В апплет JAVA будет встроен драйвер JDBC для MySQL, который позволит вам подключаться к MySQL.

Помните, что если вы хотите подключиться к удаленному серверу MySQL (отличному от того, с которого вы загрузили апплет), вам нужно будет попросить пользователей предоставить апплету расширенные разрешения. По умолчанию апплет может подключаться только к тому серверу, с которого он загружен.

0
ответ дан 24 November 2019 в 04:10
поделиться

Нет.

Вам нужно написать оболочку на PHP, а затем экспортировать возвращенные данные (возможно, как Json). НИКОГДА не получайте из своего "_GET" код SQL, так как это называется SQL-инъекцией (люди, которые узнают об этом, будут иметь полный контроль над вашей базой данных).

Это пример, который я написал:

function getJsonData()
{
        global $db;
        if (!$db->isConnected()) {
               return "Not connected";
        }
        $db->query("SELECT * FROM entries");
        $values = array();
        while( $v = $db->fetchAssoc()){
                $values[] = $v;
        }
        return json_encode($values);    
}

switch (@$_GET["cmd"]){
        case 'data':
                print getJsonData();
                exit;

        default:
                print getMainScreen();
                exit; 
}

Узнайте, пожалуйста, об инъекциях SQL.

0
ответ дан 24 November 2019 в 04:10
поделиться

Простой ответ: нет.

JavaScript - это язык клиентской стороны, который работает в браузере (несмотря на node.js), а MySQL - это технология серверной стороны, которая работает на сервере.

Это означает, что для подключения к базе данных обычно используется серверный язык, такой как ASP.NET или PHP.

7
ответ дан 24 November 2019 в 04:10
поделиться

Я думаю, что вам нужно добавить что-то вроде PHP в уравнение. PHP для взаимодействия с базой данных, а затем вы могли бы делать вызовы AJAX с помощью Javascript.

8
ответ дан 24 November 2019 в 04:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: