<?php
require_once 'Zend/Controller/Action.php';
require_once 'Zend/View.php';
require_once 'News.php';
require_once 'TestDbCon.php';
class TestController extends Zend_Controller_Action{
public function ajaxAction(){
$this->render();
}
public function getAjaxAction(){
//
$aaa=$_GET['q'];
//
$this->view->sid=$_GET['sid'];
$aaa=$this->_request->getParam('q');
$this->view->sid=$this->_request->getParam('sid');
$conn=TestDbCon::getTestDbCon();
$news_tb=new News(array('db'=>$conn));
$where=$news_tb->getAdapter()->quoteInto('title=?',$aaa);
$this->view->rowSet=$news_tb->fetchAll($where);
$this->render();
}
}
?>
5.ajax.phtml //客户操作页面,包含生成XMLHttpRequest对象,发ajax请求,处理请求,取回服务器返回值等
<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>
6.get-ajax.phtml //最后根据由服务器取回的数据生成页面元素
<?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;
?>
相关推荐:
本文主要和大家介绍了php的常量和变量实例详解的相关资料,需要的朋友可以参考下,希望能帮助到大家。
php的常量和变量实例详解
【PHP在命令行下接收参数】
如果在命令行调试php,传入的参数通过$argv获取,注意其中包含了文件名这一个元素,数组中元素的个数通过$argc获取。
【可变变量】
指的是变量的名称可变,变量的标识符可以由另一个变量的值来代替。
例如:第二个语句是为argv1这个变量赋值。
<?php
$varName = 'argv1';
$$varName = 'value1';
var_dump($argv1);
?>
【常量】
使用define定义,不可删除和修改,调用时直接写名称。define还有三参数的版本,第三个参数代表是否大小写不敏感,默认为false。
<?php
define('pi',3.14);
echo pi;
?>
技巧:先检查常量有没有被定义再定义,使用defined函数:
<?php
if(!defined('pi'))
define('pi',3.14);
else
echo 'pi has been defined<br>';
?>
对于有特殊符号的常量,需要使用constant函数来调用,注意这时常量名应该加引号,例如:
<?php
if(!defined('= ='))
define('= =','puzzled');
else
echo 'pi has been defined<br>';
echo constant('= =');
?>
获取已经定义的所有常量:
<?php
var_dump(get_defined_constants());
?>
【魔术变量】
__LINE__获取当前所在的行,__FILE__获取当前路径。
一个应用:
利用str_replace函数替换文件中的文件名为路径+文件名来保证文件路径变化仍可以访问。
str_replace(<要查找的值>,<替换为的值>,<被搜索的字符串>,<替换计数变量(可选)>);
<?php
define('ROOT',str_replace('a.php','',__FILE__));
echo ROOT;
?>
【进制】
在数字前加0是八进制,加0x是十六进制。
【字符串类型】
双引号与单引号均可,但是双引号可以解析内部变量,但是单引号效率高。
双引号解析变量:{ }可以保证分开变量名与其它部分。
<?php
$name = "test";
echo "username is {$name}";
?>
相关推荐;