簡體   English   中英

將PHP與node.js / javascript連接

[英]Connecting PHP with node.js/javascript

我必須在基於PHP的網站上實施背包問題算法。 我以為我會用JavaScript制作它,但遇到了一個問題。 我正在從MySQL獲取需要納入該算法的數據,而JavaScript不能做到這一點。 因此,我設法通過從Node.js添加連接器來做到這一點。 該算法在用戶提供一些輸入時起作用。 我用HTML制作了一個表單,只是為了獲取輸入並將其用作函數中的參數。 現在的問題是,整個網站都是用PHP編寫的,由於無法連接到數據庫,因此我無法用JavaScript將其連接起來。 我想問一下是否有任何方法可以使用它。

概括起來並使其清晰:網站是PHP,我想制作一個簡單的HTML表單以將用戶的輸入從JavaScript文件捕獲到參數函數中。 問題是我的JavaScript文件需要MySQL數據才能運行,因此它變成了node.js。 而且據我所知,在基於PHP的Web服務器上運行node.js並不是那么容易。 是否可以將PHP與JavaScript結合使用,以便PHP將MySQL中的數據加載到JavaScript中? 你們有什么建議?

“我正在從MySQL獲取需要納入該算法的數據,而JavaScript不能做到這一點”。

從瀏覽器中的JavaScript到服務器上的PHP腳本的AJAX請求是解決此問題的簡單方法。

概括該過程:在請求中,JavaScript代碼發送一些有關所需參數的參數,PHP接收該數據,查詢數據庫,並在對AJAX請求的響應中返回結果。 JavaScript收到此響應,讀取數據並繼續處理。

Node.js只是另一個服務器端腳本框架,類似於PHP。 不要讓它使用JavaScript作為其編程語言這一事實​​使您感到困惑。 如果您現有的服務器端解決方案是用PHP編寫的,則在這種情況下絕對不需要使用Node。

基於瀏覽器的JS和PHP可以使用正常的HTTP請求(可以通過AJAX發起,因此避免頁面刷新等)非常愉快地相互通信。 這就是網絡的魅力。 客戶端和服務器可以使用完全不同的編程語言和不同的操作系統,這完全沒有區別,因為它們只是使用都可以理解的通用協議(HTTP)交換數據。

在您的php文件中,注入結果,就像這樣。

<?php
// function that handle form data and returns results from mysql
// let's call it my_data_function
$results = my_data_function();
?>


<script type="text/javascript">
  var mysql_data = <?php echo json_enode($results)?>
  my_js_function(mysql_data)
</script>

這是老派的方式,然后是ajax,現在我們談論的是REST API。
希望這可以幫助。
讓我知道您是否需要更多幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM