JavaScript-альтернатива mysqli_fetch_array ()?

<?php
$connect = mysqli_connect('localhost', "root", "", "test");
if(!$connect){
die(mysqli_connect_error());
}

$sql = "SELECT * FROM articles";
$result = mysqli_query($connect, $sql) or die(mysqli_connect_error());
while($row = mysqli_fetch_array($result)){ ?>
<div class='article-div'>;
<a href='articleviewer.php?id=$row[ID]' class='article-title'> . <?php $row['Title'] ?>. </a>;
</div>;
<?php }
mysqli_close($connect);
?>

Так что у меня есть этот код на PHP, который на самом деле говорит само за себя. Он извлекает MySQL в массив и продолжает печатать div для каждой статьи при публикации заголовка статьи. Как мне сделать это в файле node.js с помощью express? У меня установлен модуль «mysql». Так что же такое узел, эквивалентный mysqli_fetch_array ()?

-2

Решение

Как нпм MySQL В документации модуля сказано, что вам просто нужно сделать запрос вроде:

connection.query('SELECT * FROM `books` WHERE `author` = "David"', function (error, results, fields) {
// error will be an Error if one occurred during the query
// results will contain the results of the query
// fields will contain information about the returned results fields (if any)
});

Затем вы можете перебрать results через простой цикл.
Примечание. В начале документации приведено объяснение того, как подключиться к базе данных и настроить ее. Прочитайте это сначала 🙂

1

Другие решения

Ты можешь использовать MySQL или же Узел-MySQL модули:

npm install -g mysql

или же

npm install -g node-mysql

Ниже приведен пример использования (при условии, что есть таблица с именем example_table с колоннами ID, FileName а также FileSize в базе данных node_dev):

var mysql = require('mysql'),
qid = '1'; // example ID

var db = mysql.createConnection({
host     : 'localhost',
user     : 'DATABASE_USER_HERE',
password : 'DATABASE_PASSWORD_HERE',
database : 'node_dev'
});

/* SQL */
db.connect();
db.query('SELECT * FROM `example_table` WHERE RowID=?', [qid], function(err, rows, fields) {
if (err) {
throw err;
console.error(err);
} else {
for (var i = 0, len = rows.length; i < len; i++) {
// either of those two will do:
console.log(rows[i].FileName, rows[i].FileSize);
console.log(rows[i]['FileName'], rows[i]['FileSize']);
}
}
});
db.end();
/* SQL */

Вы, вероятно, (в большинстве случаев) захотите написать простое промежуточное программное обеспечение / микросервисы с другими модулями узлов, такими как express, http / https, Oauth2, которые будут отслеживать запросы, перехватывать параметры и отправлять некоторые выходные данные, проанализированные как JSON или что-то в этом роде.

0

По вопросам рекламы [email protected]