我正在使用Phonegap创建移动应用。因为该项目是基于服务器的,所以我使用JQuery和AJAX连接到位于服务器上的php文件。现在我遇到了以下问题:
我通过
对php文件login.php进行AJAX调用$.post('http://example.com/php/login.php',
{
}).success(
function(data){
console.log(data);
}).error(
function(data){
//return error
console.log("Error post ajax " );
},'json');
在login.php中我想使用类方法,其中类是用另一个php文件class.php编写的。 所以login.php看起来像这样
<?php
require_once('http://example.com/php/class.php');
$test = $class->test();
echo json_encode($test);
?>
和class.php看起来像这样:
<?php
class CLASS {
public function test(){
echo "test";
}
}
$class = new CLASS;
?>
但是我不能在类CLASS中使用方法test()。如果我在login.php文件中写入CLASS,当然它可以工作,但这不是我想要的。
有没有人为我解决这个问题?
答案 0 :(得分:2)
您应该按惯例在login.php中实例化该类。
此:
$test = $class->test();
应该是这样的:
$test = new CLASS();
$test->test();
我想你说这不是你想要的,所以这可能会解决你的问题:
您没有正确声明$ class变量:
此:
$class = new CLASS;
应该是这样的:
$class = new CLASS();
答案 1 :(得分:2)
您需要学习一些基础知识,例如本教程http://tut.php-quake.net/de/,并直接了解一些内容。你做的很多事情是完全错误的
require_once('http://example.com/php/class.php');
如果没有这样,请在服务器上包含原始路径,而不是URL
require_once('/path/to/your/file/class.php');
更像这样。
$test = $class->test();
当您的功能看起来像
时,这也不起作用 public function test(){
echo "test";
}
这个,你的函数必须返回值
public function test(){
return "test";
}
实现你所尝试的......考虑直接获得一些基础知识将是我的第一个建议,请记住我只是想帮助你,因为如果你没有得到那些基础知识并且知道你正在使用的语言;)