2010-03-26 27 views
0

我有PHP紙條說是這樣的:用Javascript確認對話框打破PHP代碼?

if ($cost_frm < $cost){ 
    echo "<script type='text/javascript'> 
    var r = confirm('Input cost is lower than original. Sure?')); 
    If (r==true){ 
      } else{ 
          *** BREAK PHP SCRIPT *** 
          } 
      </script>"; 
} 

而且我想停止ejecuting腳本(或者做其他事情),如果用戶點擊取消。任何提示?

回答

4

你不能! PHP是服務器端,javascript是客戶端

+0

那麼......在這個情況下,是的。 :-) – 2010-03-26 17:35:44

+0

@ t.j擁擠者:地獄,你知道一些情況下,PHP運行客戶端和JavaScript運行服務器端?讓我知道;) – Strae 2010-03-26 18:29:09

+0

你當然可以在解釋器上運行PHP,並且我確定有一個JavaScript解釋器獨立於瀏覽器。想象一下 - 下載一個使用curl連接到端口上的服務器的PHP腳本,該腳本執行一些JavaScript並返回結果。我幾乎想嘗試一下 – 2010-03-26 19:59:38

1

爲什麼不把整個驗證放到JavaScript?

0

您不能這樣做,因爲PHP將在JavaScript運行之前完成處理。

PHP在服務器上完全運行,只有當它完成後纔會將輸出發送到瀏覽器,然後瀏覽器進行處理。所以當盒子彈出時,一切都會完成。

1

嗯,我想如果不是運行整個腳本,而是將其分解成可以使用ajax激活的段,那可能會得到您所需的。

+0

+1 AJAX使得可以連接javascript和PHP,這經常被忽略。 – 2010-03-26 20:00:39