0

データベースに接続し、javascript 棒グラフを作成したときに、javascript を使用してデータベースから値を取得したいと考えています。誰かがそれを調べて助けてくれるなら、以下は私のコードです。

<?php
ini_set('display_errors',1); 
error_reporting(E_ALL);
$link = mysql_connect('localhost', 'root', 'root');
mysql_select_db('sarc', $link);
$result = mysql_query('SELECT 73');

$val = mysql_fetch_row($result);
$val = $val[0];

?>

<link rel="stylesheet" type="text/css" href="progressbar.css" />
<script type="text/javascript" src="progressbar.js"></script>
<style type="text/css">
.my_progress_bar {
border-width: 0px;
}

</style>

<div id="my_progress_bar_1"></div>

<script type="text/javascript">
var currentValue = [<?php echo $val; ?>];
var myProgressBar = null
var timerId = null
function loadProgressBar(){
myProgressBar = [
     new ProgressBar("my_progress_bar_1",{
         height: 400,
         width: 129,
         orientation: ProgressBar.Orientation.Vertical,
         direction: ProgressBar.Direction.BottomToTop,
         animationStyle: ProgressBar.AnimationStyle.StaticFull,
         showLabel: false,
         imageUrl: 'images/bottle-in.png',
         markerUrl: 'images/marker-bottle.png',
         extraClassName: {
             wrapper: 'my_progress_bar',
             left: 'my_progress_bar',
             right: 'my_progress_bar',
             middle: 'my_progress_bar',
             marker: 'my_progress_bar',
             parent: 'my_progress_bar',
             background: 'my_progress_bar'
         },
     })
 ];

 myProgressBar[0].setValue(currentValue);
}

loadProgressBar();
</script>

このコードを実行すると、空白のページが表示されます。誰か助けてくれませんか

4

3 に答える 3

1

これは、AJAX と jQuery の両方に不慣れな人にとってはかなりのジャンプです。ここから始めることをお勧めします:

AJAX チュートリアル: http://www.w3schools.com/ajax/default.asp

jQuery チュートリアル: http://www.w3schools.com/jquery/default.asp

これらの 2 つに慣れたら、次のようなものが必要になります。

ファイル 1 : ajax_landing.php

// This file needs to search your database using PHP, and echo the results.
$data = mysql_fetch_assoc(mysql_query("SELECT myCol FROM myTable WHERE condition = value"));
echo json_encode($data);

// This should output something like...
{ myCol: 73 }

ファイル 2 : chart_page.html (または .php)

<script>
$.getJSON("ajax_landing.php", function(response) {
    var value = response['myCol'];

    example_10(value);
});
</script>

もちろん、これは表面をなぞっただけですが、正しい方向に向けられることを願っています。

w3schools をリンクするための反対票を投じないでください。彼らはそれほどひどいものではありません... ; )

于 2012-11-29T21:15:23.480 に答える
0

この JavaScript を Web ブラウザーで実行している場合、データベースからデータを取得する最も一般的な方法はサーバー経由です。これは、ある種の動的サーバーが必要であることを意味します。Java の世界では、これはサーブレット コンテナーであり、そのサーブレット コンテナー上で Web アプリケーション フレームワークを使用して支援することがほとんどです。javasript はサーバーに対して ajax 呼び出しを行い、Java コードは DB に接続し、json や xml などのデータから適切な ajax 応答を準備します。

これは役に立ちますか?おそらくJavaScriptから直接ヒットできる他のタイプのdbがあることに注意してください。ただし、それは一種の高度なトピックです。より専門的なケースが必要かどうかを知るために、あなたからのより多くの要件が必要です.

于 2012-11-29T17:16:14.357 に答える
0

AJAX は複雑に見えますが、この @Rajan に対する簡単な答えはありません。db からデータを読み取り、それを JSON として返す PHP ページを追加する必要があります (すべての HTML を含む大きなページではなく、JSON文字列だけの ex{ value: 73 }であり、クライアント側の JavaScript ライブラリ ( jQueryなど) を使用してアクセスします)。ページ、ajax を使用して値を関数に渡します。

$.ajax({
  url: 'yourserver/phppage.php',
  dataType: 'json',
  data: data,
  success: function(data) { example_10(data.value); }
});

このコードはそのままでは機能しませんが、ガイドとして役立つことを願っています。パラメータも受け入れるように example_10 関数を変更する必要があります。:)

プログラム全体を作成することはできません。しかし、もちろん、行き詰まった時点で支援することはできます。だからあなたはあなた自身を始めなければなりません。

于 2012-11-29T17:40:50.833 に答える