sql >> データベース >  >> RDS >> Mysql

React.jsWebアプリケーションのデータベースにデータを送信する

    Reactアプリからのリクエストを処理し、それに応じてデータベースを更新するサーバーが必要になります。 片道 NodeJS、Express、およびnode-mysql を使用します。 サーバーとして:

    var mysql = require('mysql');
    var express = require('express');
    var app = express();
    
    // Set up connection to database.
    var connection = mysql.createConnection({
      host: 'localhost',
      user: 'me',
      password: 'secret',
      database: 'my_db',
    });
    
    // Connect to database.
    // connection.connect();
    
    // Listen to POST requests to /users.
    app.post('/users', function(req, res) {
      // Get sent data.
      var user = req.body;
      // Do a MySQL query.
      var query = connection.query('INSERT INTO users SET ?', user, function(err, result) {
        // Neat!
      });
      res.end('Success');
    });
    
    app.listen(3000, function() {
      console.log('Example app listening on port 3000!');
    });
    

    次に、できます fetchを使用する Reactコンポーネント内で、サーバーに対してPOSTリクエストを実行します。次のようになります。

    class Example extends React.Component {
      constructor() {
        super();
        this.state = { user: {} };
        this.onSubmit = this.handleSubmit.bind(this);
      }
      handleSubmit(e) {
        e.preventDefault();
        var self = this;
        // On submit of the form, send a POST request with the data to the server.
        fetch('/users', { 
            method: 'POST',
            data: {
              name: self.refs.name,
              job: self.refs.job
            }
          })
          .then(function(response) {
            return response.json()
          }).then(function(body) {
            console.log(body);
          });
      }
      render() {
        return (
          <form onSubmit={this.onSubmit}>
            <input type="text" placeholder="Name" ref="name"/>
            <input type="text" placeholder="Job" ref="job"/>
            <input type="submit" />
          </form>
        );
      }
    }
    

    これは、これを達成するための無限の方法の1つにすぎないことに注意してください。



    1. 特定の文字が文字列に出現する回数

    2. TO_SECONDS()の例– MySQL

    3. MySQL GROUP_CONCATをハックして、限られた数の行をフェッチする方法は?

    4. PHP Mysql PDO:一般的なエラー:2006MySQLサーバーがなくなりました