Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用nodejs将多个复选框选择插入Mysql_Mysql_Node.js - Fatal编程技术网

使用nodejs将多个复选框选择插入Mysql

使用nodejs将多个复选框选择插入Mysql,mysql,node.js,Mysql,Node.js,我在mysql中插入多个选项时遇到问题。我只能选择一个值,它将被插入到“Weekend”表中,但当我选择多个日期时,它会出错。我不知道如何将输入放入数组并将其插入mysql。感谢您的指导! passport.js var LocalStrategy = require("passport-local").Strategy; var mysql = require('mysql'); var bcrypt = require('bcrypt-nodejs'); var dbconfig = req

我在mysql中插入多个选项时遇到问题。我只能选择一个值,它将被插入到“Weekend”表中,但当我选择多个日期时,它会出错。我不知道如何将输入放入数组并将其插入mysql。感谢您的指导! passport.js

var LocalStrategy = require("passport-local").Strategy;
var mysql = require('mysql');
var bcrypt = require('bcrypt-nodejs');
var dbconfig = require('./database');
var connection = mysql.createConnection(dbconfig.connection);
connection.query('USE ' + dbconfig.database);
module.exports = function(passport) {
 passport.serializeUser(function(user, done){
  done(null, user.id);
 });

 passport.deserializeUser(function(id, done){
  connection.query("SELECT * FROM users WHERE id = ? ", [id],
   function(err, rows){
    done(err, rows[0]);
   });
 });

 passport.use(
  'local-signup',
  new LocalStrategy({
   firstNameField: 'firstName', 
   lastNameField: 'lastName',
   passReqToCallback: true
  },
  function(req, firstName, lastName, done){ 
    var Weekdays = req.body.Weekdays;

    var newUserMysql = {
          firstName: firstName,
          lastName: lastName,
          Weekdays: Weekdays,

         };

         var insertQuery = "INSERT INTO users (firstName, lastName, Weekdays) values (?, ?, ?)";

         connection.query(insertQuery, [newUserMysql.firstName,newUserMysql.TXDotContact, newUserMysql.lastName,newUserMysql.Weekdays],
          function(err, rows){
           newUserMysql.id = rows.insertId;

           return done(null, newUserMysql);
          });

  })
 );


};
signup.js

<div class="form-group">
      <label>Weekday(s):
        <div>
          <input type="checkbox" name="Weekdays[]" value="Sunday" /> Sunday<br />
          <input type="checkbox" name="Weekdays[]" value="Monday" /> Monday<br />
          <input type="checkbox" name="Weekdays[]" value="Tuesday" /> Tuesday<br />
          <input type="checkbox" name="Weekdays[]" value="Wednesday" /> Wednesday<br />
          <input type="checkbox" name="Weekdays[]" value="Thursday" /> Thursday<br />
          <input type="checkbox" name="Weekdays[]" value="Friday" /> Friday<br />
          <input type="checkbox" name="Weekdays[]" value="Saturday" /> Saturday<br />
        </div><br />
      </label>
    </div>

工作日:
星期日
星期一
星期二
星期三
星期四
星期五
星期六


我必须替换var Weekdays=req.body.Weekdays;与下面的内容。控制台正在拾取选择,但我无法将数组插入表中。我必须使用JSON.stringify格式化它

for (var Weekdays in req.body.Weekdays) {
      if (req.body.Weekdays) {
        items = req.body.Weekdays;
        Weekdays = JSON.stringify(items).replace(/]|[[]|"/g, '',)
        // console.log(items);
      }
    }