2011-08-01 7 views
0

を提出してください、私はPHP複数のボタンPHP

<script type="text/javascript" src="jquery.js"></script></script> 
<script type="text/javascript"> 
function get(){ 
$.post('output.php', { name: form.name.value }, 
function(output) { 
    $('#age').html(output).show(); 

}) ; 

} 

</script> 

<body> 
<p> 
<form name="form"> 
id: 
<input type ="text" name="name"><input type ="button" name="Submit_1" value ="Get   
Existing Data" onclick="get();">//gets info from DB 

<p>url: <input type="text" name="calc_url"/></p> 
<option value="abc">abc</option> 
</select><br/> 
<input type="submit" name="Submit_2" value="submit" /> 
</form> 
<div id="title"></div> 
</p> 
</body> 
</html> 

Output.php

<?php 
Connect to DB 

$name = mysql_real_escape_string($_POST['name']); 


if(isset($_POST['submit1'])){ 
if ($name==NULL) 
echo "please enter an id!"; 
else 
{ 
$age= mysql_query("SELECT title FROM parentid WHERE id ='$name'"); 
$age_num_rows = mysql_num_rows($age); 
    if ($age_num_rows==0) 
    echo "id does not exist"; 

else 
{ 
$sql ="SELECT * FROM parentid WHERE id = '$name'";  
$result = mysql_query($sql); 
while($row = mysql_fetch_array($result)) 
{ 
$abc_output= "Existing data of the record <br />";  
$abc_output .="Title: " . $row['title'] . "<br />" ; 
$abc_output .="Report No: " . $row['reportno'] . "<br />" ; 
$abc_output .="URL: " . $row['calc_url'] . "<br />" ; 
$abc_output .="Institution: " . $row['institution'] . "<br />" ; 
} 
} 
echo $abc_output; 
} 
} 
if (isset($_POST['Submit_2'])) { 

$value = mysql_real_escape_string($_POST['name']); 
$value1 = mysql_real_escape_string($_POST['title']); 
$sql = " UPDATE parentid SET title='$value1' WHERE id ='$value'"; 
if (!mysql_query($sql)) 
{ 
die ('Error:' .mysql_error()); 

} 
} 



?> 

これは私が行っている、それが動作しないものですで、このような何かを書かれています! しかし、上記のボタンがそれの存在を確認することで押された提出するかを検出することができます

+2

あなたの最初のボタンは、サーバーにデータを送信していない提出する場合は、なぜそれ平野 ''

+0

私は同じことをしませんでしたか? –

答えて

7

(単一のボタンを個別に考慮さ)、それが動作するかどうか(ISSET())することなく、すなわち個別に行われている場合:

if (isset($_POST['Submit_2'])) { 
    // "Submit_2" submit button was clicked 
} 

編集:

  1. あなたのHTMLの構文が正しくありません。
  2. 書き込みif(isset($_POST['name'])なくif(isset($_POST['submit1'])、パラメータ名が$.post() jQueryのメソッドの2番目のパラメータによって示され、nameであることから:$.post('output.php', { name: form.name.value },
  3. documentation of jquery.postは、(POSTまたはGET要求のいずれかで)クエリ文字列がから構築されていることを教えてくれるそのメソッドの2番目のパラメータつまり、スーパーグローバルにはキーと値のペアが1つしかありません。 PHPスクリプトの先頭にprint_r($_POST)と書いてテストしてください。
  4. 廃止予定のJavascriptメソッドを使用することはおすすめされません(例:form.name.value)。代わりに、そのIDを参照してDOMオブジェクトの値を取得します(最善のアプローチ)。そこフォームの提出が本当になかったが、それはこのように、AJAXを経由して送信された

    <form> 
    <input type="text" name="name" value=""> 
    <input type="button" name="submit1" value="Submit1" id="g1" /> 
    <input type="button" name="submit2" value="Submit2" id="g2" /> 
    </form> 
    <script type="text/javascript" src="jquery.js"></script></script> 
    <script type="text/javascript"> 
    $('input[name^="submit"]').click(function() { 
        submit_name = $(this).attr('name') 
        submit_value = $(this).val() 
        $.post('output.php', { submit_name: submit_value }, 
        function(output) { 
         // do something 
        }); 
    }); 
    </script> 
    

    :あなたの入力ボタンが<input ... id="button1" />を持っている場合たとえば、このような何かを試してみてください$('#button1').val()

  5. でそれが価値だフェッチタイプsubmitの入力はありません。

+0

ありがとうございます..しかし、私はそれが働いていないことを試しました..私はそれをチェックpllzzのチェックを編集しました.. –

+0

Javascriptの 'get()'関数は何ですか? 'print_r($ _ POST)'を使って、AJAXから送られたHTTP POST要求で送られたすべての変数を見てみましょう。 – Dor

+0

コメントを申し訳ありません。早く完了しました:) –