2009-04-15 11 views
0

私は現在、このようなページを設定している:PHPの外観の順序を制御するにはどうすればよいですか?

PHP Variable Declarations 
HTML header, then a form to submit GET query 
The PHP that processes some stuff based on the GET data 
a bit of JavaScript that makes a pretty graph from the retrieved, processed data 

私は何をしたいページが最初にロードされたときにのみ、フォームが現れ持っている、とクエリが入力されると、その後、グラフはで表示されていますページの下部。それはFLOTライブラリを使っている、とJSは現在、次のようになります。

<script id="source" language="javascript" type="text/javascript"> 
$.plot($("#test"), [ [[0, 0], [1, 1]] ], { yaxis: { max: 1 } }); 
</script> 

私はいくつかのイベントハンドラか何かでの$ .PLOTを交換する必要がありますか?私はJSの新生児です!

ありがとうございます!あなたは、次のようなものを持っていることになるでしょう、あなたのファイルで

+0

ええ、圧力はありませんが、これらの回答があなたのために働いていれば、それを受け入れることができますか?それができない場合は、私たちに教えてください。乾杯! =) –

答えて

2

私は個人的には、このためにPHPを使用したい(私はJSでゴミだ...ので、私が偏っています.. 。=))あなたのPHPで

<?php 

$formSubmitted = $_POST['formSubmitted']; 

    if (!isset($formSubmitted)) { ?> 
    <form method="post" enctype="form/multipart" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 

    <input name="formSubmitted" id="formSubmitted" type="hidden" value="1" /> 

    ... 

    </form> 
           <?php } 

    else { 

     // show the graph 

     } 

    ?> 
1

<?php if ($someConditionalForTheForm) { ?> 
<form>....</form> 
<?php } else { ?> 
<script id="source" language="javascript" type="text/javascript"> 
$.plot($("#test"), [ [[0, 0], [1, 1]] ], { yaxis: { max: 1 } }); 
</script> 
<?php } ?> 
0

、出力形式のコードが最初にして、フォームが既に提出されているかどうかを参照してください。

if (isset($_GET['your_form_parameter'])) { 
    also_output_the_JS_graph; 
} 

この方法でフォームをフォームを提出したときにのみグラフが常に表示されます。もっとクールに

0

の.js(jqueryのを必要とする)

$(document).ready(function(){  
    $('#myformsubmit').click(function(){ 
     $.ajax({ 
      type: "GET", 
      url: "/your_data_processing_file.php", 
      data: "", 
      success: function(result){ 
      $("#graph").html(result); 
        /* 
        result is whatever you get from your script that handles 
        your submited data 
        */ 
      } 
     }); 
    }); 
}); 

<form id="myform">.....</form> 
    <div id="graph"><!-- here i want my result appear after submit 
without reloading the page, i'm so 1337 --></div> 

.htmlを、あなたは結果として、JSONデータを返すと、グラフのJSを経由しているの世話をすることができます。

+0

私はあなたの問題を正しく得て、私の答えに満足しているなら、質問のタイトルを「js経由でフォーム処理されたデータをロードする方法」に変更することをお勧めしたいと思います。コード。チアーズ。 – zalew

関連する問題