soroush.r70
پنج شنبه 29 تیر 1391, 13:38 عصر
من یه اسکریپت نظر دهی درست کردم که مشکل در ثبت اطلاعات داره در واقع فرخوانی برای هر مطلب می شه ولی ثبت نمی شه سورس زیر :
ابتدا میام با استفاده از کد زیر می رم به آدرس مورد نظر :
<li><a href="baner.php?id='.$row['id'].'"><img width="842" height="292" src="';echo root; echo'upload/'.$row['pic'].'" class="attachment-slider" alt="'.$row['title'].'" title="'.$row['title'].'"/></a></li>
بعد میام در اول صفحه baner.php آدرس رو به صورت زیر GET می کنم :
$id = 0;
if(isset($_GET['id']) && is_numeric($_GET['id'])) {
$id = (int) $_GET['id'];
}
برای دریافت اطلاعات از کد زیر استفاده می شود
$class->query("select * from comment where `id`='".mysql_real_escape_string($id)."' order by aid asc");
while($row = $class->fetchassoc())
{
$name = stripslashes($row['name']);
$comment = stripslashes($row['comment']);
$date = $row['date_added'];
?>
<div class="comment_holder">
<div id="photo"><img src="user.gif" width="60" height="70"><br><?=$name;?></div>
<div id="comment_text"><div id="date_posted"><?=$date;?></div><?=$comment;?></div></div>
<?
}
و برای ثبت اطلاعات از سورس زیر که در فایل ajax_server.php قرار دارد
include("sys/function.php");
$class=new content;
$id = is_numeric($_POST['id']) ? (int) $_POST['id'] : 0;
$name = addSlashes($_POST['name']);
$email = $_POST['email'];
$comment = addSlashes($_POST['comment']);
$date_added = time();
$check = mysql_query("insert into comment(id,name,email,comment,date_added) values('$id','$name','$email','$comment','$date_ad ded')");
$date_added = date("l j F Y, g:i a",time());
if($check)
echo $date_added;
else
echo "0";
این فرم من :
<table border="0" cellpadding="4" cellspacing="0" class="comment_table" width="40%">
<tr>
<td>Name :</td>
<td><input type="text" name="name" id="name" size="30"></td>
<input name="id" type="hidden" value="<?php echo $id; ?>"/>
</tr>
<tr>
<td>Email :</td>
<td><input type="text" name="email" id="email" size="30"></td>
</tr>
<tr>
<td valign="top">Comment :</td>
<td><textarea name="comment" id="comment" rows="5" cols="30"></textarea></td>
</tr>
<tr>
<td></td>
<td align="left"><input type="button" value="Submit" id="submit"> <img src="images/loading.gif" id="loading"></td>
</tr>
</table>
در ضمن بگم این اسکریپت با ای جکس ثبت می شه که کد ای جکس هم اینه
$(document).ready(function(){
$(".comment_table").find('textarea, input:text').blur(function () {
if ($(this).val() != ''){
$(this).removeClass("required");
}
});
$("#submit").click(function(){
var anyBlank = 0;
$(".comment_table").find('textarea, input:text').each(function () {
if ($(this).val() == ''){
$(this).addClass("required");
anyBlank = 1;
}
});
if(anyBlank == "0")
{
var name = $("#name").val();
var email = $("#email").val();
var comment = $("#comment").val();
comment = comment.replace(/\n\r?/g, '<br />');
$("#loading").css("visibility","visible");
$.ajax({
type: "POST",
url: "ajax_server.php",
data: "name="+name+"&email="+email+"&comment="+comment,
success: function(date_added){
if(date_added != 0)
{
structure = '<div class="comment_holder"><div id="photo"><img src="user.gif" width="60" height="70"><br>'+name+'</div><div id="comment_text"><div id="date_posted">'+date_added+'</div>'+comment+'</div></div>';
$(".no_comments").fadeOut("slow");
$("#ajax_response").prepend(structure);
$(".comment_table").find('textarea, input:text').each(function () {
$(this).val("");
});
}
else
alert("Unexpected error...!");
$("#loading").css("visibility","hidden");
}
});
}
});
$("#ajax_response").mouseover(function(){
$(this).find(".comment_holder").mouseover(function(){
$(this).addClass("highlight");
});
});
$("#ajax_response").mouseout(function(){
$(this).find(".comment_holder").mouseout(function(){
$(this).removeClass("highlight");
});
});
});
در جدول منم یه aid وجود داره که کلید اصلی جدول نظرات منه و دیگری id یرای اینکه مشخص بشه کدوم نظر برای کدوم مطلبه حالا دلیل اینکه همش این id رو برابر صفر قرار می ده رو نمی دونم
ابتدا میام با استفاده از کد زیر می رم به آدرس مورد نظر :
<li><a href="baner.php?id='.$row['id'].'"><img width="842" height="292" src="';echo root; echo'upload/'.$row['pic'].'" class="attachment-slider" alt="'.$row['title'].'" title="'.$row['title'].'"/></a></li>
بعد میام در اول صفحه baner.php آدرس رو به صورت زیر GET می کنم :
$id = 0;
if(isset($_GET['id']) && is_numeric($_GET['id'])) {
$id = (int) $_GET['id'];
}
برای دریافت اطلاعات از کد زیر استفاده می شود
$class->query("select * from comment where `id`='".mysql_real_escape_string($id)."' order by aid asc");
while($row = $class->fetchassoc())
{
$name = stripslashes($row['name']);
$comment = stripslashes($row['comment']);
$date = $row['date_added'];
?>
<div class="comment_holder">
<div id="photo"><img src="user.gif" width="60" height="70"><br><?=$name;?></div>
<div id="comment_text"><div id="date_posted"><?=$date;?></div><?=$comment;?></div></div>
<?
}
و برای ثبت اطلاعات از سورس زیر که در فایل ajax_server.php قرار دارد
include("sys/function.php");
$class=new content;
$id = is_numeric($_POST['id']) ? (int) $_POST['id'] : 0;
$name = addSlashes($_POST['name']);
$email = $_POST['email'];
$comment = addSlashes($_POST['comment']);
$date_added = time();
$check = mysql_query("insert into comment(id,name,email,comment,date_added) values('$id','$name','$email','$comment','$date_ad ded')");
$date_added = date("l j F Y, g:i a",time());
if($check)
echo $date_added;
else
echo "0";
این فرم من :
<table border="0" cellpadding="4" cellspacing="0" class="comment_table" width="40%">
<tr>
<td>Name :</td>
<td><input type="text" name="name" id="name" size="30"></td>
<input name="id" type="hidden" value="<?php echo $id; ?>"/>
</tr>
<tr>
<td>Email :</td>
<td><input type="text" name="email" id="email" size="30"></td>
</tr>
<tr>
<td valign="top">Comment :</td>
<td><textarea name="comment" id="comment" rows="5" cols="30"></textarea></td>
</tr>
<tr>
<td></td>
<td align="left"><input type="button" value="Submit" id="submit"> <img src="images/loading.gif" id="loading"></td>
</tr>
</table>
در ضمن بگم این اسکریپت با ای جکس ثبت می شه که کد ای جکس هم اینه
$(document).ready(function(){
$(".comment_table").find('textarea, input:text').blur(function () {
if ($(this).val() != ''){
$(this).removeClass("required");
}
});
$("#submit").click(function(){
var anyBlank = 0;
$(".comment_table").find('textarea, input:text').each(function () {
if ($(this).val() == ''){
$(this).addClass("required");
anyBlank = 1;
}
});
if(anyBlank == "0")
{
var name = $("#name").val();
var email = $("#email").val();
var comment = $("#comment").val();
comment = comment.replace(/\n\r?/g, '<br />');
$("#loading").css("visibility","visible");
$.ajax({
type: "POST",
url: "ajax_server.php",
data: "name="+name+"&email="+email+"&comment="+comment,
success: function(date_added){
if(date_added != 0)
{
structure = '<div class="comment_holder"><div id="photo"><img src="user.gif" width="60" height="70"><br>'+name+'</div><div id="comment_text"><div id="date_posted">'+date_added+'</div>'+comment+'</div></div>';
$(".no_comments").fadeOut("slow");
$("#ajax_response").prepend(structure);
$(".comment_table").find('textarea, input:text').each(function () {
$(this).val("");
});
}
else
alert("Unexpected error...!");
$("#loading").css("visibility","hidden");
}
});
}
});
$("#ajax_response").mouseover(function(){
$(this).find(".comment_holder").mouseover(function(){
$(this).addClass("highlight");
});
});
$("#ajax_response").mouseout(function(){
$(this).find(".comment_holder").mouseout(function(){
$(this).removeClass("highlight");
});
});
});
در جدول منم یه aid وجود داره که کلید اصلی جدول نظرات منه و دیگری id یرای اینکه مشخص بشه کدوم نظر برای کدوم مطلبه حالا دلیل اینکه همش این id رو برابر صفر قرار می ده رو نمی دونم