繁体   English   中英

如何从 node.js webapp 中的 mysql 查询重定向?

[英]How to redirect from a mysql query in node.js webapp?

我正在制作一个简单的 node.js webapp,用于将数据插入到具有条件的数据库中 - 当有两个具有相同时间属性的实例时,不会调用插入查询,并且您会被重定向到一个简单的 html 页面,其中包含您拥有的消息选择另一个时间。

我的问题是,如何从属于查询的代码块重定向? 还是有另一种方法让用户知道他必须选择另一个时间?

app.post('/', function(req, resp) {
    try {
        var name = req.body.name;
        var date = req.body.date + " " + req.body.time;
        var phone = req.body.phone;
        var spz = req.body.spz;
        var typeOfProblem = req.body.typeOfProblem;

        con.query(("SELECT COUNT(*) AS datecheck FROM `objednani` WHERE datetime = '"+ date +"'"), function(err, result){
            if (err) throw err;
            if(result[0].datecheck > 1){
                console.log("preplneno"); // THIS IS THE POINT WHERE I WANT TO REDIRECT THE USER
            } else {
                con.query(("INSERT INTO objednani (name, datetime, phone, spz, typeofproblem) " + "VALUES ('"+name+"','"+date+"','"+phone+"','"+spz+"','"+typeOfProblem+"')"), function (err, result) {
                    if (err) throw err;
                    console.log("uspech");
                });
            }
        });
    } catch (err) {
        resp.redirect('/fail');
    }
});

你可以调用resp.redirect('/fail'); 在您的查询块内,或function(req, resp) function 中的任何位置。 你不需要投掷和接球。

作为另一个建议:您可以尝试为您的 sql 嵌入参数。 否则可能会受到 sql 注入攻击。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM