PlotlyJS - проблема динамического разбора PHP в JSON - PullRequest
0 голосов
/ 19 сентября 2019

Я не могу динамически обновлять plotly.JS с помощью меню выбора.Plotly.js всегда переходит к первому условию с $ ItemSelected = tester.

Logic.

  1. Выберите продукт из формы
  2. api.php получает эту информацию о продукте
  3. ploty.js обновляет все графики на основе api.php

Соответствующий код ...….

api.php (чтобы получить файл JSON)

<?php
    include 'database.php';

    // connect to MySQL server      
    $conn = new database('127.0.0.1', 'database_test', 'test', 'test');

    $conn->dbConnect();

    // Default Option 

    if(!isset($_POST['selectProduct']) ) {

        $ItemSelected = "tester"; 

        // Get Yield Data
        $query = $conn->db->prepare('SELECT * FROM product_info WHERE ITEMNUM = :itemnum');

        $query->bindParam(':itemnum', $ItemSelected, PDO::PARAM_STR);

        $query->execute();

        $result = $query->fetchAll( PDO::FETCH_ASSOC );

        echo json_encode($result); 

    }

    // If Option Selected 
    else {

        $ItemSelected = $_POST['selectProduct'] ;

        // Get Yield Data
        $query = $conn->db->prepare('SELECT * FROM product_info WHERE ITEMNUM = :itemnum');

        $query->bindParam(':itemnum',$ItemSelected, PDO::PARAM_STR);

        $query->execute();

        $result = $query->fetchAll( PDO::FETCH_ASSOC );

        echo json_encode($result);

    }

index.html

<?php
    include 'database.php';

    // connect to MySQL server       
    $conn = new database('127.0.0.1', 'database_test', 'test', 'test302');
    $conn->dbConnect();

    // DISTINCT - Won't show repeat values
    $query = $conn->db->prepare('SELECT DISTINCT ITEMNUM FROM product_info ');

    $query->execute();

    $results = $query->fetchAll();

?>

<form method="post" id="productform">

    <select name = "selectProduct" id="selectProduct">
        <?php foreach( $results as $row ){
            echo "<option>" . $row['ITEMNUM'] . "</option>";
           }
         ?> 
    </select>
          <button id="Submit">submit</button>
</form>

    <?php
      if(isset($_POST[Submit])) {
                include "api.php" ;

    }
    ?>

plotly.js

$chartURL = "api.php"

// Use the JSON data 
function updateData() { 

    Plotly.d3.json($chartURL, function(data){ 
        processData(data)  // Always returns TESTER instead of changing to what is shown in the select menu 
        } );

}

Так что я застрял, потому что когда нажата submit, api.php не обновляетсятак сюжетно всегда есть тестер

прошу сообщить

спасибо

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