2015-06-27 5 views
1

Я пытаюсь построить просто простой графический граф x-y с данными, полученными из базы данных MySQL. Код следующий:Земельный участок из базы данных mysql

<!DOCTYPE html> 
<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/flot/0.8.3/jquery.flot.js"></script> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.js"></script> 
</head> 
<body> 
    <h3><b>Database</b></h3> 
<?php 
$servername = "localhost"; 
$username = "root"; 
$password = ""; 
$dbname = "prueba2"; 
// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 
$sql = "SELECT id, username, password, email, x, y FROM user"; 
$result = $conn->query($sql); 
if ($result->num_rows > 0) { 
    echo "<table> 
      <tr> 
       <th>ID</th> 
       <th>Username</th> 
       <th>Password</th> 
       <th>Email</th> 
       <th>X</th> 
       <th>Y</th> 
       </tr>"; 
    // output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo " 
      <tr> 
       <td>" . $row["id"]. "</td> 
       <td>" . $row["username"]. "</td> 
       <td>" . $row["password"]. "</td> 
       <td>" . $row["email"]. "</td> 
       <td>" . $row["x"]. "</td> 
       <td>" . $row["y"]. "</td> 
      </tr>"; 
    } 
    echo "</table>"; 
    $dataset1 = array(); 
    while ($row = $result->fetch_assoc()) { 
     $dataset1[] = array(intval($row["x"]),intval($row["y"])); 
    } 
} else { 
    echo "0 results"; 
} 
$conn->close(); 
?> 
<br> 
<h3>Test plot</h2> 
<div id="placeholder"></div> 
<script type="text/javascript"> 
     var dataset1 = <?php echo json_encode($dataset1); ?>; 
     $(function() { 
      $.plot($("#placeholder"), [ dataset1 ]); 
     }); 
</script> 
</body> 
</html> 

В результате я получаю это таблица отлично установлен, но пустой Flot Диаграмма участка. То есть данные загружаются правильно, но я не могу их построить или хранить в переменных или, может быть, синтаксис графиков карт не очень хорошо/хорошо размещен. Какие-либо предложения? Благодаря!

ответ

1

Проблема в том, что присвоение массиву выполняется после первого while, которое создает строки для таблицы html, когда результат уже получен сервером. Таким образом, второй выход цикла немедленно не присваивает ничего.

Вы должны выполнить назначение в первом цикле после инструкции эха.

+0

Да! Большое спасибо. Я только что разместил назначение массива внутри первого цикла while и теперь он загружает данные отлично :) –

Смежные вопросы