AngularJS ex.com/forum?id=1到ex.com/#/forum?id=1

时间:2015-02-06 09:19:18

标签: javascript php json angularjs forum

因此。我正在创建一个论坛,我想使用AngularJS构建它。

首先关闭。

现在,我已经建立了与我的数据库的连接:

<?php 
session_start();
$db = new mysqli("localhost","root","","uf") or die ("ERROR! With connection!");


function sql($query){
 return mysql_query($query);
}
$sql = "SELECT forum_id, forum_name, forum_desc, forum_created FROM forum_tbl";
if($query = $db->prepare($sql)){
	$query->bind_result($f_id, $f_name, $f_desc, $f_created);
	$query->execute();
	$query->store_result();
	
}else{
	echo $db->error;	
}
?>

它分为2个文件,第一个是 db_connect.php ,第二个 core.php

我已经制作了上面的表格,他们有样本数据。

我现在如何将f_id,f_name,..转换为JSON编码数据?并在我的main.js文件中使用该JSON来使用data.forumid?

我已经让php使用以下方法从数据库中读取数据:

		<?php if($query->num_rows !==0):
            while($row = $query->fetch()):
			?>
            <tr>
                <td><?= $f_id;?></td>
                <td><a href="#/HELPME"><?= $f_name;?></a></td>
                <td><?=  $f_desc;?></td>
                <td><?= $f_created;?></td>
            </tr>
            <?php endwhile; endif; ?>

但我不想这样读取数据。 我很想使用ng-repeat。

2 个答案:

答案 0 :(得分:1)

您应该将行存储在数组中,然后使用json_encode()将其转换为json:

$rows = array();
while($row = $query->fetch()) {
    $rows[] = $row;    
}
echo json_encode($rows);

答案 1 :(得分:0)

所以

我这样做......

<a ng-click="setRoute('forum')" href="#/forum/id=<?php echo $f_id;?>" class="list-group-item">Link</a>

在我的html中是ng-app="urheilu"

var app = angular.module('urheilu', ['ngRoute']);

app.config(function($routeProvider) {
    $routeProvider
.when('/forum/id=:id', {
templateUrl: function(urlattr){
return 'app/components/forums/threadlist.php?id=' + urlattr.id + '';
    } 
})
});

这就是我如何进行动态链接。

DONE。

-Kevin