Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.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
如何将数据从KnockOut发送到Php for MySql?_Php_Mysql_Json_Knockout.js - Fatal编程技术网

如何将数据从KnockOut发送到Php for MySql?

如何将数据从KnockOut发送到Php for MySql?,php,mysql,json,knockout.js,Php,Mysql,Json,Knockout.js,我可以从淘汰赛中正确显示我的数据;但是,我想不出一个好的方法来获取PHP并让PHP为mySQL准备数据: $logFile = 'logFile'; $req = $_REQUEST['data']; $res = json_decode(stripslashes( $req ), true); error_log("result: ".$req.", res=".json_encode($res), 3, $logFile); error_log(

我可以从淘汰赛中正确显示我的数据;但是,我想不出一个好的方法来获取PHP并让PHP为mySQL准备数据:

    $logFile = 'logFile';
    $req = $_REQUEST['data'];

    $res = json_decode(stripslashes( $req ), true);

    error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);

    error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);

    error_log("\n", 3, $logFile);

    header("Content-type: text/plain");

    echo json_encode($res);

    ?>
从我的表单页面,我可以触发数据在提交时显示,没有问题:

var json =   ko.utils.stringifyJson( this.Stuff );     
alert("This is what I wanna save: \n" + json );
    $logFile = 'logFile';
    $req = $_REQUEST['data'];

    $res = json_decode(stripslashes( $req ), true);

    error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);

    error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);

    error_log("\n", 3, $logFile);

    header("Content-type: text/plain");

    echo json_encode($res);

    ?>
但是,假设我想将其发送到一个php文件,然后将其写入mySql——接下来该怎么做

ko.utils.postJson( $("form")[0], this.Stuff );
// or
$.get( "_php/savetodb.php" , json );
…当PHP页面收到JSON格式的数据时,会发生什么

我在网上看到的每一个解决方案基本上都说“你能做到”,但不是我要做的

我正在尝试的路径(据我所知,这是首选路径)是:
    $logFile = 'logFile';
    $req = $_REQUEST['data'];

    $res = json_decode(stripslashes( $req ), true);

    error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);

    error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);

    error_log("\n", 3, $logFile);

    header("Content-type: text/plain");

    echo json_encode($res);

    ?>

表单数据->敲除->编码JSON->PHP->解码JSON->MYSQL

在PHP中,您需要:

    $logFile = 'logFile';
    $req = $_REQUEST['data'];

    $res = json_decode(stripslashes( $req ), true);

    error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);

    error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);

    error_log("\n", 3, $logFile);

    header("Content-type: text/plain");

    echo json_encode($res);

    ?>
  • 使用
  • 在MySql数据库上执行
    INSERT
  •     $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    

    在PHP中,您需要:

        $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    
  • 使用
  • 在MySql数据库上执行
    INSERT
  •     $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    
    这里有一些有用的答案——大多数答案归结为“嘿,你为什么不看看文档?”

    在我试图通过JSON向PHP发送数据的第一部分中,我发现以下链接很有用:

        $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    
    因此,对我来说(对于测试来说)有效的代码是:HTML

        $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    
    就像我说的,这真的很简单,但我现在至少可以听从别人给我的建议了。。。阅读文档。

    这里有一些有用的答案——大多数答案归结为“嘿,你为什么不阅读文档?”

    在我试图通过JSON向PHP发送数据的第一部分中,我发现以下链接很有用:

        $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    
    因此,对我来说(对于测试来说)有效的代码是:HTML

        $logFile = 'logFile';
        $req = $_REQUEST['data'];
    
        $res = json_decode(stripslashes( $req ), true);
    
        error_log("result: ".$req.", res=".json_encode($res), 3, $logFile);
    
        error_log(", sales1_lastname: ".$res['sales'][1]['lastname'], 3, $logFile);
    
        error_log("\n", 3, $logFile);
    
        header("Content-type: text/plain");
    
        echo json_encode($res);
    
        ?>
    

    就像我说的,这真的很简单,但我现在至少可以听从别人给我的建议了。。。阅读文档。

    如果您使用jQuery而不是ko.utils.postJson,请确保在问题中使用$.post而不是$.get。如果您使用jQuery而不是ko.utils.postJson,请确保在问题中使用$.post而不是$.get。这是怎么回事,因为我没有复制并粘贴受版权保护的样本到这个网站?他的PHP答案完全包含了我使用
    json\u decode
    链接的内容,他的答案不包括MySql插入帮助,我的答案包括。我添加了代码并查看了我的源代码。告诉某人阅读文档并没有什么帮助。这相当于在电子商店寻求帮助,并让别人给你读盒子。此外,你不是唯一发布的人,只是唯一显示的帖子。如果你需要额外的帮助(你没有指出你在问题中需要多少,我道歉),那么你只需对问题或答案发表评论,并要求提供更多信息,这不值得投反对票,如果有人简单地问我,我可以很容易地添加到这一点上,他们没有。您的问题并没有说明您拥有什么级别的PHP或MySql经验。最初的问题帖子是开始而不是结束,这个网站就像维基百科一样,内容可以改进,但是如果一个最初的错误答案立即被否决,我有什么动机再次帮助你?这怎么会无助呢,因为我没有复制并粘贴受版权保护的样本到这个网站上?他的PHP答案完全包含了我使用
    json\u decode
    链接的内容,他的答案不包括MySql插入帮助,我的答案包括。我添加了代码并查看了我的源代码。告诉某人阅读文档并没有什么帮助。这相当于在电子商店寻求帮助,并让别人给你读盒子。此外,你不是唯一发布的人,只是唯一显示的帖子。如果你需要额外的帮助(你没有指出你在问题中需要多少,我道歉),那么你只需对问题或答案发表评论,并要求提供更多信息,这不值得投反对票,如果有人简单地问我,我可以很容易地添加到这一点上,他们没有。您的问题并没有说明您拥有什么级别的PHP或MySql经验。最初的问题帖子是开始而不是结束,这个网站就像维基百科一样,东西可以改进,但是如果一个最初的错误答案立即被否决,我有什么动力再次帮助你?