Этот вопрос закрыт для ответов, так как повторяет вопрос Как сформировать AJAX запрос для базы данных?
@holllop

Не могу понять как сформировать AJAX запросы?

Я написал таблицу под ней кнопка которая в свою очередь вызывает форму :
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Mine_contract</title>
    <link href="new.css" rel="stylesheet"/>
    <script src="script.js" defer></script>
</head>
<body>
    <table id="m_info">
        <tr>
            <th>№ п/п</th>
            <th>Номер</th>
            <th>Название</th>
            <th>Адрес</th>
            <th>ФИО директора</th>
            <th>Номер телефона директора</th>
        </tr>
        <tr>
            <td><p>1</p></td>
            <td><p>1</p></td>
            <td><p>Пример названия</p></td>
            <td><p>Пример адреса</p></td>
            <td><p>ФИО директора</p></td>
            <td><p>+79490000000</p></td>
        </tr>
    </table>
    <div class="popup">
        <div class="popup__container">
            <div class="popup__wrapper">
                <div id="wrapper">
                    <form action="perem.php" method="POST" class="form">
                    <button class="exit" class="exit" id="closeButton" onclick="delRow()">х</button>
                    <div class="string">
                        <label for="id">№ П/П:</label>
                        <input type="number" id="id" name="id" required>
                    </div>
                    <div class="string">
                        <label for="N_m">Номер :</label>
                        <input type="text" id="N_m" name="n_m" placeholder="Например" required>
                    </div>
                    <div class="string">
                        <label for="name">Название:</label>
                        <input type="text" id="name" name="name_m" placeholder="Например " required>
                    </div>
                    <div class="string">
                        <label for="Adr">Адрес:</label>
                        <input type="text" id="Adr" name="Adr_m" placeholder="Например г.Название города, р.Район, ул.Улица">
                    </div>
                    <div class="string">
                        <label for="Full_name">ФИО директора :</label>
                        <input type="text" id="Full_name" name="director" placeholder="Например Иванов Иван Иванович" required>
                    </div>
                    <div class="string">
                        <label for="Phone">Номер телефона :</label>
                        <input type="tel" id="Phone" name="Phone_number" placeholder="Например +00000000000" required>
                    </div>
                        <button type="submit" id="contact" value="Отправить в БД">
                    </form>
                </div>
            </div> 
        </div>
    </div>       
    <button id="button" class="button" onclick="addRow()">Открыть форму</button>
</body>
</html>


Как сделана кнопка вызова формы:
const button = document.querySelector('#button');
const closeButton = document.querySelector('#closeButton');
const form = document.querySelector('.form');
const popup = document.querySelector('.popup');

button.addEventListener('click', () => {
  form.classList.add('open');
  popup.classList.add('popup_open');
});

closeButton.addEventListener('click', () => {
  form.classList.remove('open');
  popup.classList.remove('popup_open');
});


Так же есть API(или как это правильно называется) на Node.js
const Pool = require('pg').Pool
const pool = new Pool({
  user: 'мои данные',
  host: 'мои данные',
  database: 'мои данные',
  password: 'мои данные',
  port: 5432,
})

const getMineinfo = (request, response) => {
    pool.query('SELECT * FROM mine_info', (error, results) => {
       if (error) {
         throw error
    }
    response.status(200).json(results.rows)
     })
}

const createRow = (request, response) => {
    const { n_mine, name_mine, adress, full_name_of_direcor, phone_number } = request.body
  
    pool.query('INSERT INTO mine_info (n_mine, name_mine, adress, full_name_of_direcor, phone_number) VALUES ($1, $2, $3, $4, $5) RETURNING *', [n_mine, name_mine, adress, full_name_of_direcor, phone_number], (error, results) => {
      if (error) {
        throw error
      }
      response.status(201).send(`User added with ID: ${results.rows[0].id}`)
    })
  }

module.exports = {
    getMineinfo,
    createRow,
}//переменные из другого файла

//другой файл
const express = require('express')
const bodyParser = require('body-parser')
const db = require('./queries')
const app = express()
const port = 3000

app.use(bodyParser.json())
app.use(
 bodyParser.urlencoded({
    extended: true,
  })
)

app.get('/mine_info', db.getMineinfo)
app.post('/mine_info', db.createRow)

app.listen(port, () => {
    console.log(`App running on port ${port}.`
)})

При помощи Node.js я получаю данные из своей базы данных в виде JSON по ссылке https://мои-данные:3000/mine_info. Я хочу что бы данные из формы брались и записывались в базу данных, после чего выводились в овую строку уже существующей таблицы.
  • Вопрос задан
  • 227 просмотров
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы