我想为我的网站使用星级评分系统,所以有人可以评价帖子或图片,所以我使用netbeans synfony,首先这是index.php
<link type="text/css" rel="stylesheet" href="css/style.css">
<link type="text/css" rel="stylesheet" href="css/example.css">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
</head>
<body>
<?php
require_once 'config.php';
$post_id = '1';
?>
<div class="rate-ex1-cnt">
<div id="1" class="rate-btn-1 rate-btn"></div>
<div id="2" class="rate-btn-2 rate-btn"></div>
<div id="3" class="rate-btn-3 rate-btn"></div>
<div id="4" class="rate-btn-4 rate-btn"></div>
<div id="5" class="rate-btn-5 rate-btn"></div>
</div>
<div class="box-result-cnt">
<?php
$query = mysql_query("SELECT * FROM wcd_rate");
while($data = mysql_fetch_assoc($query)){
$rate_db[] = $data;
$sum_rates[] = $data['rate'];
}
if(@count($rate_db)){
$rate_times = count($rate_db);
$sum_rates = array_sum($sum_rates);
$rate_value = $sum_rates/$rate_times;
$rate_bg = (($rate_value)/5)*100;
}else{
$rate_times = 0;
$rate_value = 0;
$rate_bg = 0;
}
?>
<hr>
<h3>The content was rated <strong><?php echo $rate_times; ?></strong> times.</h3>
<hr>
<h3>The rating is at <strong><?php echo $rate_value; ?></strong> .</h3>
<hr>
<div class="rate-result-cnt">
<div class="rate-bg" style="width:<?php echo $rate_bg; ?>%"></div>
<div class="rate-stars"></div>
</div>
<hr>
</div><!-- /rate-result-cnt -->
</div><!-- /tuto-cnt -->
<script>
// rating script
$(function(){
$('.rate-btn').hover(function(){
$('.rate-btn').removeClass('rate-btn-hover');
var therate = $(this).attr('id');
for (var i = therate; i >= 0; i--) {
$('.rate-btn-'+i).addClass('rate-btn-hover');
};
});
$('.rate-btn').click(function(){
var therate = $(this).attr('id');
var dataRate = 'act=rate&post_id=<?php echo $post_id; ?>&rate='+therate; //
$('.rate-btn').removeClass('rate-btn-active');
for (var i = therate; i >= 0; i--) {
$('.rate-btn-'+i).addClass('rate-btn-active');
};
$.ajax({
type : "POST",
url : "http://localhost/rating/ajax.php",
data: dataRate,
success:function(){}
});
});
});
</script>
我有这个文件ajax.php,它将把数据保存在数据库中:
<?php
require_once 'config.php';
if($_POST['act'] == 'rate'){
//search if the user(ip) has already gave a note
$ip = $_SERVER["REMOTE_ADDR"];
$therate = $_POST['rate'];
$thepost = $_POST['post_id'];
$query = mysql_query("SELECT * FROM wcd_rate where ip= '$ip' ");
while($data = mysql_fetch_assoc($query)){
$rate_db[] = $data;
}
if(@count($rate_db) == 0 ){
mysql_query("INSERT INTO wcd_rate (id_post, ip, rate)VALUES('$thepost', '$ip', '$therate')");
}else{
mysql_query("UPDATE wcd_rate SET rate= '$therate' WHERE ip = '$ip'");
}
}
?>
和config.php:
<?php
//change the values with your own hosting setting
$mysql_host = "localhost";
$mysql_database = "wcd_rating";
$mysql_user = "root";
$mysql_password = "";
$db = mysql_connect($mysql_host,$mysql_user,$mysql_password);
mysql_connect($mysql_host,$mysql_user,$mysql_password);
mysql_select_db($mysql_database);
?>
我想知道的是如何在我的项目synfony2中集成这个(控制器,路由器,视图),以便我可以在列表注释中保存表中Notesr的速率值?提前谢谢
答案 0 :(得分:2)
在您开始使用Symfony2
开发Web应用程序之前,我建议您查看官方文档。它将使您更好地理解Symfony
框架的工作原理。以下链接可以帮助您:
$_GET
,$_POST
,$_COOKIES
,$_FILES
以Symfony的方式获取Doctrine
和Entities
管理您的数据库。 按照我给他们的顺序从链接中阅读教程,您应该能够在几个小时内将代码转换为在Symfony2中工作。