Heim > Backend-Entwicklung > PHP-Tutorial > So implementieren Sie Ajax im Zend Framework

So implementieren Sie Ajax im Zend Framework

小云云
Freigeben: 2023-03-20 08:40:02
Original
1302 Leute haben es durchsucht

Dieser Artikel stellt Ihnen hauptsächlich die Methode zur Implementierung von Ajax im Zend Framework-Framework vor. Er analysiert die spezifischen Schritte und zugehörigen Betriebstechniken zur Implementierung der Ajax-Funktion im Zend Framework-Framework im Detail kann jedem helfen.

Entwicklungsplattform: Windows >
Erforderliche Datenbanktabellen und ZF-bezogene Verzeichnisse und Dateien:


1 🎜>

2. Verzeichnis:


mysql> select * from news;
+----+-------+---------------------+
| id | title | add_time
| +----+-------+---------------------+
| 22 | rot  | 2008-01-04 00:00:00 |
| 23 | aaa  | 2008-01-04 00:00:00 |
| 24 | rot  | 2008-01-04 00:00:00 |
| 29 | dfeew | 2008-02-27 00:00:00 |
| 26 | jesse | 2008-02-27 00:00:00 |
| 27 | andle | 2008-02-27 00:00:00 |
| 28 | andle | 2008-02-27 00:00:00 |
+----+-------+---------------------+
Nach dem Login kopieren

3. Zugehörige Dokumente:

1.index.php //Eintragsdatei

2.TestDbCon.phhp //Datenbankverbindungsdatei

3 .News.php //Abstrahierte Datenbanktabellendatei 4.TestController.php //Controller

5.ajax.phtml //Kundenbetriebsseite, einschließlich Generierung eines XMLHttpRequest-Objekts, Senden einer Ajax-Anfrage, Verarbeiten der Anforderung und Abrufen des Server-Rückgabewerts usw.

6.get-ajax.phtml //Generieren Sie schließlich Seitenelemente basierend auf den vom Server abgerufenen Daten

Zugehöriger Dateiinhalt :

1.index.php //Eintragsdatei

2.TestDbCon.phhp //Datenbankverbindungsdatei


3.News.php //Abstrakte Datenbanktabellendatei

<?php
set_include_path(&#39;.&#39; . PATH_SEPARATOR .&#39;../library&#39; . PATH_SEPARATOR . get_include_path() . PATH_SEPARATOR . &#39;../application/modules/default/models&#39; . PATH_SEPARATOR . &#39;../application/modules/admin/models&#39;);
require_once &#39;Zend/Controller/Front.php&#39;;
require_once &#39;Zend/Controller/Router/Route.php&#39;;
$ctrl=Zend_Controller_Front::getInstance();
$ctrl->addModuleDirectory(&#39;../application/modules&#39;);
$ctrl->throwExceptions(true);
$ctrl->dispatch();
?>
Nach dem Login kopieren


4.TestController.php / /Controller

<?php
  require_once &#39;Zend/Db.php&#39;;
  require_once &#39;Zend/Registry.php&#39;;
  class TestDbCon{
    public static function getTestDbCon(){
      $params=array(
      &#39;host&#39;=>&#39;localhost&#39;,
      &#39;username&#39;=>&#39;root&#39;,
      &#39;password&#39;=>&#39;123456&#39;,
      &#39;dbname&#39;=>&#39;test&#39;
      );
      $con=Zend_Db::factory(&#39;Pdo_Mysql&#39;,$params);
      return $con;
    }
  }
?>
Nach dem Login kopieren


5.ajax.phtml //Kundenoperationsseite, einschließlich Generieren von XMLHttpRequest-Objekten, Senden von Ajax-Anfragen, Verarbeiten von Anfragen, Abrufen von Server-Rückgabewerten usw.

<?php
/**
 * PHP Template.
 */
require_once &#39;Zend/Db/Table/Abstract.php&#39;;
class News extends Zend_Db_Table_Abstract{
  //  protected $_schema=&#39;test&#39;;
    protected $_name=&#39;news&#39;;
    protected $_primary=&#39;id&#39;;
    protected $_sequence=true;
}
?>
Nach dem Login kopieren


6.get-ajax.phtml //Generieren Sie schließlich Seitenelemente basierend auf den vom Server abgerufenen Daten

<?php
  require_once &#39;Zend/Controller/Action.php&#39;;
  require_once &#39;Zend/View.php&#39;;
  require_once &#39;News.php&#39;;
  require_once &#39;TestDbCon.php&#39;;
  class TestController extends Zend_Controller_Action{
    public function ajaxAction(){
      $this->render();
    }
    public function getAjaxAction(){
//      $aaa=$_GET[&#39;q&#39;];
//      $this->view->sid=$_GET[&#39;sid&#39;];
      $aaa=$this->_request->getParam(&#39;q&#39;);
      $this->view->sid=$this->_request->getParam(&#39;sid&#39;);
      $conn=TestDbCon::getTestDbCon();
      $news_tb=new News(array(&#39;db&#39;=>$conn));
      $where=$news_tb->getAdapter()->quoteInto(&#39;title=?&#39;,$aaa);
      $this->view->rowSet=$news_tb->fetchAll($where);
      $this->render();
    }
  }
?>
Nach dem Login kopieren


Verwandte Empfehlungen:

<script type="text/javascript">
  var xmlHttp
  function showValue(str)
  {
    xmlHttp=getXmlHttpObject();
    if (xmlHttp==null)
    {
      alert ("您的浏览器不支持AJAX.");
      return;
    }
    var url="/test/get-ajax";
    url=url+"/q/"+str;
    url=url+"/sid/"+Math.random();
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
  }
  function stateChanged()
  {
    if (xmlHttp.readyState==4)
    {
      document.getElementById("resulte").innerHTML=xmlHttp.responseText;
    }
  }
  function getXmlHttpObject()
  {
    var xmlHttp=null;
    try
    {
      // Firefox, Opera 8.0+, Safari
      xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
      // Internet Explorer
      try
      {
        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (e)
      {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
    return xmlHttp;
  }
</script>
<form>
  请选择一位客户:
  <select name="customers" onchange="showValue(this.value)">
  <option value="rot">rot</option>
  <option value="aaa">aaa</option>
  <option value="jesse">jesse</option>
  <option value="andle">andle</option>
  </select>
</form>
<p>
<p id="resulte"><b>客户信息将在此处列出。</b></p>
</p>
Nach dem Login kopieren

Zusammenfassung der Datenbankbetriebsfähigkeiten von Zend Framework


Methode von Zend Framework zum Einrichten von ZF-Projekten basierend auf der Befehlszeile
<?php
  foreach($this->rowSet as $row){
    echo "<p>";
    echo "<ul>";
    echo "<li>";
    echo "id=".$row->id." title=".$row->title." add_time=".$row->add_time;
    echo "</li>";
    echo "</ul>";
    echo "</p>";
  }
 echo $this->sid;
?>
Nach dem Login kopieren

Detaillierte Erläuterung häufig verwendeter Validatoren im Zend Framework

Das obige ist der detaillierte Inhalt vonSo implementieren Sie Ajax im Zend Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage