Как построить график данных, выбрав diffrent Patient_id из моей базы данных и нанести на него график? - PullRequest
0 голосов
/ 25 марта 2019

Я новичок в этом деле.

Если я вставляю данные P001 (Patient_id) в выпадающий список, то он принимает P002 в раскрывающемся списке, но извлекает данные P001 из базы данных из phpmyadmin.

<?php
include "header.php";
include "connection.php";
?>
 <form  method="POST">
<div class="right_col" role="main">
            <div class="">
                <div class="page-title">
                    <div class="title_left">
                        <h3>Realtime Patient Health Monitor</h3>
                    </div>
                    <div class="title_right">
                        <div class="col-md-5 col-sm-5 col-xs-12 form-group pull-right top_search">
                            <div class="input-group">
                                <input type="text" class="form-control" placeholder="Search for...">
                    <span class="input-group-btn">
                      <button class="btn btn-default" type="button">Go!</button>
                    </span>
                            </div>
                        </div>
                    </div>
                </div>
                <!--FRONT ENDS-->
                <div class="clearfix"></div>
                <div class="row" style="min-height:500px">
                    <div class="col-md-12 col-sm-12 col-xs-12">
                        <div class="x_panel">

                            <div class="x_content">
                               <label>Select Patient ID</label>
     <select class="form-control" name="patient_id">
         <?php 
         $result = mysqli_query($link,"SELECT patient_id from heart_reating");

         while($row = mysqli_fetch_array($result)) 
             echo "<option value='" . $row['patient_id'] . "'>" . $row['patient_id'] . "</option>";
         ?>
  </select>  

  <input  id="submit" type="submit" name="submit" value="submit"> 

                                <?php
                                 if(isset($result)){
                                         $res = mysqli_query($link, "select * from heart_reating  limit 1");
                                 }
                           // $res = mysqli_query($link, "select * from heart_reating ORDER BY id ASC LIMIT 1");
                         //   $res = mysqli_query($link, "SELECT DISTINCT patient_id, sdi, rate, temp, max, min, interv FROM heart_reating");
                           // echo "<table class='table table-bordered'>";
                            ?>
                            <col width=40>
                            <col width=50>
                            <col width=>
                            <col width=>
                            <col width=40>
                            <col width=40>
                            <col width=40>
                            <!--table properties close-->



                              <?php 
                                if(isset($_POST['submit'])){

                              while ($row = mysqli_fetch_array($res)) { ?>

                              <tr>

                              <div> 
                              <td >
                                  <iframe src="linegraph.html" height="620px" width="620px"></iframe>
                              </td>

                              <td><iframe src="new.html" height="620px" width="620px"></iframe></td>
                              </div>
                              <td><?php echo $row["max"] ?></td>
                              <td><?php echo $row["min"] ?></td>
                              <td><?php echo $row["interv"] ?></td>
                              </tr> 

                              <?php }}
                              ?>
  <!--<tr>
    <td>Eve</td>
    <td>Jackson</td> 
    <td>94</td>
  </tr>-->  
                            </table>
                            <?php
                        /*    echo "<tr>";
                            echo "<th>";
                            echo "Patient ID";
                            echo "</th>";
                            echo "<th>";
                            echo "Sepses Detection Index(%)";
                            echo "</th>";
                            echo "<th>";
                            echo "Heart Rate";
                            echo "</th>";
                            echo "<th>";
                            echo "Temperature";
                            echo "</th>";
                            echo "<th>";
                            echo "Max";
                            echo "</th>";
                            echo "<th>";
                            echo "Interval";
                            echo "</th>";
                            echo "<th>";
                            echo "Min";
                            echo "</th>";
                            echo "</tr>";

                            //variable declaration closed
                            while ($row = mysqli_fetch_array($res)) {
                                echo "<tr>";
                                echo "<td>";
                        //        $pid = $row["patient_id"];
                                echo $row["patient_id"];
                                echo "</td>";
                                echo "<td>";
                                echo $row["sdi"];
                                echo "</td>";
                                echo "<td>";?>
                                <style>
                              .chart-container {
                                width: 640px;
                                height: 300px;
                              }
                                </style>  
                            <!--    <div class="chart-container"> --> 
                            <!--   <canvas id="mycanvas" width="300px" height="300px"></canvas> -->
   <canvas class="chart-container" id="mycanvas"></canvas>  
    </div>  
    <script type="text/javascript" src="js2/jquery.min.js">

    </script>
    <script type="text/javascript" src="js2/Chart.min.js">

    </script>
    <script type="text/javascript" src="js2/linegraph.js">

    </script> 
                                <?php
                                echo $row["rate"];
                                echo "<td>";
                                echo $row["temp"];
                                echo "</td>";
                                echo "<td>";
                                echo $row["max"];
                                echo "</td>";
                                echo "<td>";
                                echo $row["interv"];
                                echo "</td>";
                                echo "<td>";
                                echo $row["min"];
                                echo "</td>";
                                echo "</tr>";
                            }
                            echo "</table>"; */
                            ?>

                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
</div>
</div>
                              <script type="text/javascript" src="js2/jquery.min.js"></script>
                              <script type="text/javascript" src="js2/Chart.min.js"></script>
                              <script type="text/javascript" src="js2/linegraph.js"></script>
<?php
include "footer.php";
?>

В раскрывающемся списке выберите, если выбрать идентификатор пациента 2-го, он должен построить график 2-го пациента, поскольку в настоящее время он показывает только график данных первого столбца.Я хочу, чтобы, если я выберу другого пациента, он вызвал эти данные и график.

1 Ответ

0 голосов
/ 25 марта 2019

Я вижу, что когда вы выбираете Patient Id , вы не отправляете его на сервер php и, следовательно, не передается в запросах sql.

Рабочий раунд:

Ищите эту строку кода, и именно здесь у вас возникают проблемы

 if(isset($result)){
 $res = mysqli_query($link, "select * from heart_reating  limit 1");
 }

Вам нужно будет проверить его напрямую с различными значениями Patient_id в базе данных, чтобы убедиться, что он работает. Чтобы проверить Patient_id 1 , он становится

  $res = mysqli_query($link, "select * from heart_reating where patient_id= 1");

Теперь для передачи значения Patient_id из формы в SQL-запрос

$patient_id= $_POST['patient_id']
$res = mysqli_query($link, "select * from heart_reating where patient_id= '$patient_id'");

О, да, приведенный выше код по-прежнему уязвим для атаки с использованием SQL-инъекций, поэтому вам нужно будет отключить его с помощью некоторой функции

mysqli_real_escape_string();

Usage

$patient_id = mysqli_real_escape_string($con, $_POST['patient_id']);

где $ con - переменные подключения к базе данных. ваш может быть $ list или что-то, что вы реализовали

Обновлен раздел

Если я вас правильно понимаю. Вы можете использовать php сессию в monitor.php

вы можете инициировать сеансы внутри тегов php следующим образом

<?php

//start sessions
session_start();

//set patient id to session
$patient_id= $_POST['patient_id'];

$_SESSION['patient_id'] = $patient_id;


?>

in data.php

вы можете сделать это

<?php

//start sessions
session_start();
$pid = $_SESSION['patient_id'];
echo $pid

You can now use it in a query in data.php eg

mysqli_query($link, "select * from heart_reating where patient_id= '$pid'"); 

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...