实例化一个PHP类,调用一个方法,并使用javascript将返回数组转换为HTML页面

实例化一个PHP类,调用一个方法,并使用javascript将返回数组转换为HTML页面,javascript,php,jquery,html,arrays,Javascript,Php,Jquery,Html,Arrays,我试图学习如何在与php类相同的服务器上的HTML页面中使用javascript(带或不带jquery),初始化php类,然后调用其getLinks()方法并将其返回的链接数组传递给java脚本数组 我希望这可以在索引页面上没有任何php代码的情况下完成 我看到了一些例子,包括这个伟大的例子,但它似乎没有解决某些细节,如 1) 我怎么能在没有php的页面上写一个include呢? 2) 如何实例化一个php类并调用一个特定的方法? 2) 我可以创建一个PHP帮助文件来进行实例化,但是我仍然需要调

我试图学习如何在与php类相同的服务器上的HTML页面中使用javascript(带或不带jquery),初始化php类,然后调用其getLinks()方法并将其返回的链接数组传递给java脚本数组

我希望这可以在索引页面上没有任何php代码的情况下完成

我看到了一些例子,包括这个伟大的例子,但它似乎没有解决某些细节,如

1) 我怎么能在没有php的页面上写一个include呢? 2) 如何实例化一个php类并调用一个特定的方法? 2) 我可以创建一个PHP帮助文件来进行实例化,但是我仍然需要调用一个方法,这将如何实现? 3) 如何使用jQuery发出GET请求并从请求中调用函数

如果不向索引页添加php代码就无法完成此操作,请让我知道这一点

我的PHP代码:

<?php
//class.links.php
include "db_config.php";

class Links{

    public $db;
    public function __construct(){

    $this->db = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);   

    if(mysqli_connect_errno()){

        echo "Error: Could not connect to the database.";
        exit;

    }

}


public function getLinks(){

    $sql = "SELECT link_name FROM links";

    $rows = mysqli_query($this->db, $sql) or die(mysqli_connect_errno()."Data can not be inserted.");
    $links = array();

    if($rows->num_rows < 1){

        return false;

    }else{

        while ($row=mysqli_fetch_row($rows)){

                $links[] = $row[0];     

            }

        return $links;
      }     
    }

 }

?>

HTML代码:

<html>
<head>
<title>Home Page</title>
<link type="text/css" rel="stylesheet" href="engineering.css">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js"></script>

<script src="scriptfile.js">
</script>

</head>
<body>

<div name ="test_spot" id ="test_spot" width="200" height="400"></div>

<script type = "text/javascript">
function getOutput(){



}
</script>
<button onClick="getOutput()" style="height: 60px; width:100px;" >Test</button>

</body>
</html>

主页
函数getOutput(){
}
试验
请显示属于getOutput()方法的脚本,以将数组放置在test_spot div中

谢谢

首先在服务器上创建一个php文件(可公开访问)。它应该输出您希望在前端使用的任何数组/什么。比如:

// link-getter.php
include class.links.php
$links = new Links();
echo json_encode($links->getLinks());
然后使用Wighty显示您的结果:

function getOutput(){
    $.get( "/path/to/link-getter.php", function( data ) {
        // optional: process data object
        $( "#test_spot" ).html( data );
    });
}
这可能需要在前端进行一些调整。您可以根据自己的意愿操作数据对象。 通过Javascript加载内容的技术称为


请注意,这只是原型等级代码。没有错误处理,没有安全性,什么都没有。

对不起,我尝试了各种javascript-ajax和javascript jquery示例,但它们对我的情况都不起作用。我想最好是让脚本标签空着,让别人帮我。谢谢你的帮助。它起作用了。我道歉。服务器脚本不是我的强项。