ThinkPHP无法调用M()函数

我用ThinkPHP写注册页面,需要检查用户名是否可用.我用ajax技术.我在App/Lib下新建了一个Common目录(自动生成的时候没有该目录,只有Action,Be... 我用ThinkPHP写注册页面,需要检查用户名是否可用.我用ajax技术.我在App/Lib下新建了一个Common目录(自动生成的时候没有该目录,只有Action,Behavior,Model,Widget),把ajax技术调用的check.php放在自己建的Common目录里面,但是却报错:call to undefined function M().是不是这个文件夹不能调用M()函数?这样的话,应该把check.php放哪里?

check.php代码:

<?php
$username=$_GET["username"];
$user=M('user');
$res=$user->where('user_name="$username"')->find();
if($res!=null && $res!=false)
{
echo "1";
}
else
{
echo "0";
}
?>

ajax.js代码:
var xmlHttp;
//判断浏览器是否支持AJAX
function createXMLHttp()
{
if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();//创建对象 Firefox、Opera 以及 Safari 浏览器、IE8
}
else if(window.ActiveXObject)//IE
{
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");//IE6+,
}
catch(e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");//IE5.5
}
catch(e)
{
alert("您的浏览器不支持AJAX!");
return false;
}

}

}
}
//check
function check(username1)
{
createXMLHttp();
xmlHttp.open("GET","../../VideoMonitor/Lib/Common/check.php?username="+username1,true);
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
if(xmlHttp.status==200)
{
var result=xmlHttp.responseText;
alert(result);
if(result==1)
document.getElementById("testCanReg").innerHTML="<font color='red'>此用户名已注册!</font>";
else if(result==0)
document.getElementById("testCanReg").innerHTML="<font color='red'>此用户名可用!</font>";
}
}
};
xmlHttp.send(null);
}

html代码就省略了,望高手指教,谢谢!
展开
 我来答
mzf9527
2012-07-16 · TA获得超过115个赞
知道小有建树答主
回答量:193
采纳率:0%
帮助的人:220万
展开全部
其实thinkphp的开发手册上写的很清楚,在2.3 部署目录里写的很明了。

你的check.php可以放在项目目录的common目录下,而且最好做成函数的形式。那个Lib目录是放Action的。
另外,那些js代码放在项目目录的Public目录下的Js里,当然你也可以自己看着办。
你的ajax调用可以试试用jquery,很方便的。
关键要多看手册。
津巴与马子
2012-07-16
知道答主
回答量:17
采纳率:0%
帮助的人:5.1万
展开全部
zhege buhuia
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式