Email with points is not inserted in the database

0

Currently the project is developed with angular 5, express and a SQL database. When entering an email with points in its structure (for example: [email protected]) it does not enter them into the database.

This is my code:

  add : function(req, res, next){
    var fechaactual = new Date();
    var fecha = dateFormat(fechaactual, 'yyyy-mm-dd');
    var config = require('.././bd/config');
    var db = mysql.createConnection(config);
    db.connect();
    var ban = false;
    var caf_id = null;
    var ban = false;
    var objSq = module.exports.obj("", 0, req, false, 1);
    if(objSq){
      async.waterfall(
        [function(callback){
          db.query('SELECT * FROM tbl_usuario where usu_correo = ?', objSq.usuario.usu_correo,  function(err, rows, fields){
              if(err) {
                if(req.query.disp_tipo == vs.disp_movil){
                  res.send('{"response":"'+vs.response_error+'"}');
                }else{
                  console.log("error >>> ", err );
                  throw err;
                }
              }
              if(rows.length > 0){
                if(req.query.disp_tipo == vs.disp_movil){
                  res.send('{"response":"'+vs.response_error_email+'"}');
                }else{
                  req.flash('email', 'El email ya existe');
                  return res.redirect('/view/dispositivos/signin');
                }                
              }else{
                callback(null, true);
              }
          });                      
        }, function(arg1, callback){
          db.query('SELECT * FROM tbl_caficultor where caf_celular = ?', objSq.obj.caf_celular,  function(err, rows, fields){
              if(err) {
                if(req.query.disp_tipo == vs.disp_movil){
                  res.send('{"response":"'+vs.response_error+'"}');
                }else{
                    console.log("error >>> ", err );
                  throw err;
                }
              }
              if(rows.length > 0){
                if(req.query.disp_tipo == vs.disp_movil){
                  res.send('{"response":"'+vs.response_error_telefono+'"}');
                }else{
                  req.flash('telefonoerror', 'El telefono ya existe');
                  return res.redirect('/view/dispositivos/signin');
                }                
              }else{
                callback(null, true);
              }
          });                      
        }, function(arg2, callback){
          db.query('INSERT INTO tbl_usuario SET ?', objSq.usuario,  function(err, rows, fields){
              if(err) {
                if(req.query.disp_tipo == vs.disp_movil){
                  res.send('{"response":"'+vs.response_error+'"}');
                }else{
                    console.log("error >>> ", err );
                  throw err;                          
                } 
              }
              ban = true;
              var idUsuario = rows.insertId;
              console.log("id usuario>>"+idUsuario);
              callback(null, idUsuario);
          });                      
        },function(arg3, callback){
          if(ban){
            objSq.obj.usu_id = arg3;                      
            console.log("tbl_caficultor-----1>>>>"+JSON.stringify(objSq.obj));
            db.query('INSERT INTO tbl_caficultor SET ?', objSq.obj,  function(err, rows, fields){
                if(err) {
                  if(req.query.disp_tipo == vs.disp_movil){
                    res.send('{"response":"'+vs.response_error+'"}');
                  }else{
                      console.log("error >>> ", err );
                    throw err;
                  }
                }
                console.log("tbl_caficultor----->>>>"+JSON.stringify(rows));
                var idCaficultor = rows.insertId;
                console.log("id tbl_caficultor>>"+idCaficultor);
                var data = {
                  usu_id: arg3,
                  caf_id: idCaficultor
                }
                db.end();
                callback(null, data);
            }); 
          }
        }],
        function (err, result) {
          if (err) {
            console.log("error de consulta ver");
          }
          if(req.query.disp_tipo == vs.disp_movil){
            res.send('{"response":"'+vs.response_ok+'","usu_id":"'+result.usu_id+'","caf_id":"'+result.caf_id+'"}');
          }else{
            req.flash('info', 'Se ha registrado correctamente, ya puede iniciar sesion');
            return res.redirect('/view/dispositivos/signin');
            //res.render('Caficultores/addView', {info : 'Caficultor creado correctamente'});                    
          }
        }
      );
    }
  },
    
asked by DANIEL BRAVO 03.08.2018 в 00:47
source

1 answer

0

You can re define your query with a classic insertSelect

 db.query('INSERT INTO tbl_caficultor SELECT ?', objSq.obj,  function(err, rows, fields){

More info link

    
answered by 03.08.2018 / 01:21
source