2012-05-16 160 views
2

我有一個顯示兩種形式的php文件。第一個窗體顯示客戶的數據,從mysql中的表中還包括一個複選框。第二種形式包含來自另一個表的數據,並且還包含一個複選框,該表單包含消息。我需要使用複選框將選中的消息發送到第一種形式選定的客戶列表。PHP中的兩種形式

我可以用純php做到嗎?或者我需要使用JavaScript?請指出我的教程。

+0

你可以只使用PHP,但最好用js或jquery的COS最好是將數據發送到服務器之前,輸入要檢查你的表格值,以及教程只需鍵入谷歌或YouTube上的JavaScript教程和你會得到成千上萬的好結果 –

+0

威廉,這怎麼可以只用php來完成,謹慎地詳細說明一下? –

+0

@Interstellar_Coder是否要在頁面打開時加載客戶名稱和數據庫中的消息?或者它是一個靜態信息? –

回答

0

你需要下載jQuery庫...讀什麼是AJAX

獲取價值

var value = $("#customer").val(); 

我們得到其中id = 「客戶」

得到cheked的選擇價值

if($('#customer').is(":checked")) { } else { } 

發送服務器上的數據

var value = $("#customer").val(); 
$.ajax({ 
      type: "POST", 
      url: "default.php", 
      data: "name="+value, 
      success: function(data){ 
      alert('ok!') ; 
      } 
}); 

我們發送服務器上的方法後的數據...我們的價值ID發送變量值,值=值=「客戶」

祝你好運!對不起,我的英語:)

0

你想要完成的最初的問題是你cannot natively submit two forms concurrently

是否有兩種不同的形式是絕對必要的?如果是這樣,你會在提交時需要實現something like this爲了從一種形式到另一個拷貝過來的值(由Roatin馬斯書面):

function form2form(formA, formB) { 
    $(':input[name]', formA).each(function() { 
    $('[name=' + $(this).attr('name') +']', formB).val($(this).val()) 
    }) 
} 

當然,如果你的業務需求不要求兩個獨立表單,你可以將所有的值放入一個表單中,然後用PHP進行處理。如果您在提交之前需要驗證表單,您首先需要使用Javascript來完成此操作。

一旦在PHP中,你會從$_POST超全局獲取值。然後你可以做你需要做的事情。

// With each customer checked, send checked messages 
foreach($_POST['customers'] as $customer) 
{ 
    // With this customer, send all messages 
    foreach($_POST['messages'] as $message) 
    { 
     // Send $message here 
    } 
} 
+0

是的,它必須有兩種形式,發送消息的用戶需要選擇消息將發送給誰,每個消息將發送給哪些教師。 –

+0

如果您希望它在頁面上看起來像兩個單獨的窗體,那麼這是一些CSS樣式的問題。 –