现场网站相当安全?

时间:2015-10-09 17:06:24

标签: php jquery json ajax security

我想知道以下内容是否相当安全且可以在生产环境中使用。我正在从数据库中检索数据,并使用Chart.js将响应数据用于图表。

我的html文件

<div id="canvas-holder">
    <canvas id="chart-area2" width="200" height="200" />
</div>

<div id="canvas-holder">
    <canvas id="chart-area" width="200" height="200" />
</div>

<div id="chartjs-tooltip"></div>


<script>
$.ajax({
   url: 'chartpi.php',
   success: function (response) {//response is value returned from php 
        var datachart = JSON.parse(response);
        var ctx2 = document.getElementById("chart-area2").getContext("2d");
        window.myPie = new Chart(ctx2).Pie(datachart);
   }
});

$.ajax({
   url: 'chartpi2.php',
   success: function (response) {//response is value returned from php
        var datachart = JSON.parse(response);
        var ctx = document.getElementById("chart-area").getContext("2d");
        window.myPie = new Chart(ctx).Doughnut(datachart);
   }
});
</script>

我的PHP文件

<?php

        // set up the connection variables
        $db_name  = '$dbname';
        $hostname = '$host';
        $username = '$uname';
        $password = '$pass';

        // connect to the database
        $dbh = new PDO("mysql:host=$hostname;dbname=$db_name", $username, $password);

        // a query get all the records from the users table
        $sql = 'SELECT * FROM pichart2';

        // use prepared statements, even if not strictly required is good practice
        $stmt = $dbh->prepare( $sql );

        // execute the query
        $stmt->execute();

        // fetch the results into an array
        $result = $stmt->fetchAll( PDO::FETCH_ASSOC );

        // convert to json
        $json = json_encode( $result );

        // echo the json string
        echo $json;
?>

1 个答案:

答案 0 :(得分:1)

你的问题

  

相当安全,可以在生产环境中使用

你所涵盖的两个显而易见的领域

  • 后端的参数化查询
  • 检索的数据不是基于网站页面
  • 的用户输入

但是,我要提醒的是,如果从饼图表中检索到的任何数据保留了来自其他来源的任何用户提供的数据,那么您应该考虑/实施正确的output encoding 如果执行了适当的输入卫生设施。

如果不是这样,那就不用担心了。