2012-03-14 4 views
-1

Основываясь на моих предыдущих thread Я пытаюсь использовать ExtJS для вызова функции из класса PHP, который живет в другой области. Возможно ли это, или я должен создать новый PHP и просто передать его args? Я бы предпочел использовать мой существующий код, чтобы я не дублировал его.Вызов функции класса PHP с помощью ExtJS?

Мой текущий класс PHP обрабатывает мое соединение с БД и т. Д., Но я понятия не имею, как или если я могу создать экземпляр класса и вызвать функцию с помощью ExtJS.

<?php 

class productInfo extends productInterface { 

.... 

    function getProducts($code) { 

     if (!$this->isConnected()) 
      $this->connect(); 

     $products = null; 

     $query = "SELECT id, product FROM products Where id = $code"; 

     $result = $this->dbConnection->exec_query($query); 
     if ($result){ 
      while($row = $this->dbConnection->fetch_array($result)) { 
       $products [$row['id']] = $row['product ']; 
      } 
     } 

     return $products ; 
    } 
} 

?> 

Client код сторона:

<select id="productFamily" onchange="getProducts()"> 
<option value="select">Select</option> 
    ... 
</select> 

ExtJs

function getProducts(productFamily){ 

    var value = Ext.get("productFamily").dom.options[Ext.get("productFamily").dom.selectedIndex].value; 

    Ext.Ajax.request({ 
      // How do I call getProducts(value) from ExtJS ??? 
    }); 
} 

Возможно ли это?

+0

Дайте нам пример того, что вы пытаетесь достичь, и что придумали до сих пор. –

+0

Я добавил свой PHP-код, но я понятия не имею, как создать экземпляр этого класса и позвонить в мою функцию через ExtJS – user1216398

+0

Позвольте мне перефразировать его: зачем вам нужно называть этот код из ExtJS? Почему бы вам не сделать ajax-вызов этой услуги? –

ответ

2

Рекомендация drgomesp - это, безусловно, самый простой способ.

Тем не менее, там является способом разоблачения вашего API-интерфейса на стороне сервера для использования с ExtJS. Если вы действительно хотите использовать PHP функции с помощью ExtJS, проверьте Ext Direct:

http://www.sencha.com/products/extjs/extdirect

Смежные вопросы