Phalcon プロジェクトのビュー ファイル ( ) で、json でエンコードされた結果 ( ManagementController.php
、statisticAction
) を Highchart 構文に配置したいと考えています。stat.phtml
もともと、stat.phtml
私が使用していた:
...
...
series: [{
type: 'pie',
name: 'Browser share',
data: []
}]
}
$.getJSON('data/user_type.php', function(json) {
options.series[0].data = json;
chart = new Highcharts.Chart(options);
});
});
data/user_type.php
パブリックフォルダーに配置されています。
user_type.php
:
<?php
$con = mysql_connect("localhost","root","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("mockup_workspace", $con);
$result = mysql_query("SELECT name_type_user, total FROM v_ntype_user where id_admin=1");
$rows = array();
while($r = mysql_fetch_array($result)) {
$row[0] = $r[0];
$row[1] = $r[1];
array_push($rows,$row);
}
print json_encode($rows, JSON_NUMERIC_CHECK);
mysql_close($con);
?>
データは静的ですが、ロードすると機能します。しかし、それでもネイティブの PHP 構文を使用しているため、そのロジックを Managementcontroller で使用したいと考えています。次に、ManagementController (myController/actionController) を使用しているときに$.getJSON
、まだ URL json ファイル (のような) が必要であるという問題を見つけました。data/user_type.php
では、Controller から取得したい場合はどうすればよいでしょうか。
ManagementController.php
<?php
namespace workspace_mockup_2\Controllers;
use workspace_mockup_2\Models\VnTypeUser as nTypeUser;
use Phalcon\Mvc\Controller;
class ManagementController extends Controller {
...
public function statisticAction() {
$id_admin = $this->session->get('auth');
// User Type
$typeUser = nTypeUser::find('id_admin="' . $id_admin . '"');
$rows = array();
foreach($typeUser as $t) {
$row[0] = $t->name_type_user;
$row[1] = $t->total;
array_push($rows,$row);
}
echo json_encode($rows, JSON_NUMERIC_CHECK);
$this->view->pick("/frontend/user_management_page/stat");
}
私は方法を探していました、そのようなコントローラにこれを入れて、
...
$printjson = json_encode($rows, JSON_NUMERIC_CHECK);
$this->view->printjs = $printjson;
変数を入れ$printjs
て に置き換えます$.getJSON('data/user_type.php', ...
がstat.phtml
、うまくいきませんでした。助けてください :(
ありがとう..