我在php中开始了一个面向对象的编程。我可以使用jquery ajax从php类调用函数吗?
我想做日志 - 使用ajax和jquery。
编辑:我可以从jquery.php文件调用函数ajax - 使用jQuery AJAX吗?
//FILE jquery.php
class jquery {
public function ajax() {
echo "result";
}
}
我在php中开始了一个面向对象的编程。我可以使用jquery ajax从php类调用函数吗?
我想做日志 - 使用ajax和jquery。
编辑:我可以从jquery.php文件调用函数ajax - 使用jQuery AJAX吗?
//FILE jquery.php
class jquery {
public function ajax() {
echo "result";
}
}
如果你做类似这样的Ajax调用:
http://example.com/ajax.php?firstParam=1
在您ajax.php
文件,你可以做这样的事情:
switch($_GET['firstParam']){
case "1":
callYourFunction();
break;
case "2":
someOtherFunction();
break;
}
这是一个非常剥离的例子...在现实世界的情况下,你将不得不采取秒保证您的服务器之外的任何信息的真实性(例如,来自用户)。
我给出的名称只是占位符 - 您可以将函数/变量名称更改为任何您感觉舒适的名称。
我希望这可以解释您的难题。
您不能直接调用类 - 但可以获取执行结果。
这里有一个例子,你可以怎么称呼它近直接 - 但不使用这个关键的登录代码。
<?php
$ftcn = $_GET['getname'];
$bc = new ReallyBadCode();
$bc->$ftcn();
class ReallyBadCode{
function test(){
}
function __call($name, $args){
$this->$name($args);
}
}
不确定您是否完全理解AJAX是什么,但它是Asynchronous JavaScript和XML的首字母缩写词。使用Ajax,Web应用程序可以异步地(在后台)向服务器发送数据和从服务器检索数据,而不会干扰现有页面的显示和行为。而已。
我相信这是你在找什么(尽管它不是面向对象的,但我不是写一个完整的面向对象的登录尝试回答你的问题)
文件:login.php
<?php
$db = new PDO("mysql:host=localhost;dbname=database", SQL_USER, SQL_PASS);
$stmt = $db->prepare('SELECT user_id, user_activated FROM users WHERE (username = AND user_password = ? LIMIT 1');
$stmt->execute(array($_POST['u'], $_POST['p']));
if($stmt->rowCount() == 1)
{
// Authentication session storage stuff here
echo 'Logged in';
}
else
{
echo 'bad login';
}
?>
所以你可以有一个HTML页面的东西,如:
<div id="results"></div>
<input type="text" id="txtUsername" /> <br />
<input type="password" id="txtPassword" /><br />
<button id="cmdLogin">Login</button>
<script>
$(document).ready(function(){
$("#cmdLogin").click(function(){
$u = $("#txtUsername").val();
$p = $("#txtPassword").val();
$.ajax({
type: "POST",
url: "http://yoursite.com/login.php",
data: "u="+u+"&p="+p
}).done(function(results) {
$("#results").html(results).hide().fadeIn();
});
});
});
</script>
而且,记住这个代码是未进行测试和书面它作为回答这个,所以不要把这个作为一种解决方案为w你需要的帽子,而是一种资源来帮助你实现你所要求的东西。
你不能用AJAX调用PHP类 - 但你可以得到执行的结果。 对于AJAX部分,编程范例是无关紧要的。 – NaN 2012-04-15 11:23:51
我想在php中有一个类。来自班级的呼叫功能。这可能吗? – Jenan 2012-04-15 11:26:17
是的,您可以完成这项工作,但是我建议您在实施任何关键代码之前先学习关于Ajax和PHP的基础知识。 – 2012-04-15 11:32:33