PDA

View Full Version : سوال: مشکل ثبت نظر



soroush.r70
پنج شنبه 29 تیر 1391, 12: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">&nbsp;<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 رو برابر صفر قرار می ده رو نمی دونم

soroush.r70
پنج شنبه 29 تیر 1391, 14:32 عصر
بزرگواری موجود نیست ببینه مشکل ما چیه...؟

soroush.r70
پنج شنبه 29 تیر 1391, 17:59 عصر
کسی نمی دونه مشکل کجاست..؟

us1234
پنج شنبه 29 تیر 1391, 19:02 عصر
سلام یکم صبور باشید . من الان بررسی می کنم . البته به شرطی که متد هایی که استفاده کردید مثل

$class->fetchassoc()
درست باشه!!

us1234
پنج شنبه 29 تیر 1391, 19:06 عصر
شما این کد را به این شکل تغییر بدید و کد را اجرا کنید ببینید آی دی درسته یا نه ؟

$id = 0;
if(isset($_GET['id']) && is_numeric($_GET['id'])) {
echo $id = (int) $_GET['id'];
}

soroush.r70
جمعه 30 تیر 1391, 11:21 صبح
دوست من نشد چاره چیه..؟

us1234
جمعه 30 تیر 1391, 11:50 صبح
دوست عزیز من نگفتم درست میشه . فقط میخاستم ببینم آی دی که ارسال شده درسته و واقعا عدد است . لطفا دوباره با همون کد که من بهش اکو اضافه کردم چک کنید و نتیجه را بگید.

soroush.r70
جمعه 30 تیر 1391, 11:55 صبح
آره عدده دیگه

us1234
جمعه 30 تیر 1391, 12:06 عصر
شما اون چیزی که از ajax می گیرید را را هم اکو کنید اگه نشون نداد توی فایل ذخیره کنید ببنید ajax کار میده یا نه . همراه دیباگ را یکی یکی همینجور پیش برید ببنید مشکل از کدوم لایه س.

soroush.r70
جمعه 30 تیر 1391, 12:19 عصر
درج می شه مشکلی نداره وقتی که من در آدرس id=2 هستم در موقع درج id برابر با صفر قرار می ده که باید برابر با 2 قرار بده وقتی که من به طور دستی در بانک این صفر رو 2 می کنم نشونم می ده تنها مشکل قرار ندادن عدد به جای صفر در فیلد id هست هرچی هم می بینم معلوم نیست مشکل از کجاست.

soroush.r70
جمعه 30 تیر 1391, 14:48 عصر
کسی نمی دونه مشکل کجاست....؟

soroush.r70
جمعه 30 تیر 1391, 19:41 عصر
کسی نمی دونه مشکل کجاست....؟

soroush.r70
شنبه 31 تیر 1391, 11:22 صبح
!...help me

soroush.r70
شنبه 31 تیر 1391, 12:11 عصر
لطفا یکی بگه این نقطه کور کجاست...؟

soroush.r70
یک شنبه 01 مرداد 1391, 13:01 عصر
هنوزم منتظرم

soroush.r70
چهارشنبه 11 مرداد 1391, 12:04 عصر
کسی نمی دونه مشکل چیه...؟

soroush.r70
شنبه 14 مرداد 1391, 14:51 عصر
؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

soroush.r70
چهارشنبه 18 مرداد 1391, 18:02 عصر
?????????????????