• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل برگشت خود فرم در درخواست ایجکس
#1
با سلام خدمت دوستان گرامی:
من فرمی رو با درخواست ایجکس با زبان jquery به سمت سرور ارسال کردم.که همه چیز مرتب و کدم جواب داده و اطلاعات هم روی دیتابیس با موفقیت میشینه فقط مشکل اساسی اینجاست که هنگامی که میخوام جواب موفقیت ارسال اطلاعات رو به کاربران نشون بدم.خود فرمم به صورت ریست شده تو جواب بهم برمیگرده.برناممو شی گرا نوشتم.
اینم کدم
با سلام خدمت دوستان گرامی:
من فرمی رو با درخواست ایجکس با زبان jquery به سمت سرور ارسال کردم.که همه چیز مرتب و کدم جواب داده و اطلاعات هم روی دیتابیس با موفقیت میشینه فقط مشکل اساسی اینجاست که هنگامی که میخوام جواب موفقیت ارسال اطلاعات رو به کاربران نشون بدم.خود فرمم به صورت ریست شده تو جواب بهم برمیگرده.برناممو شی گرا نوشتم.
اینم کدم
php?>
include_once("config.php");
$main=new connect();
if(!empty($_POST['email']))
{
$emaili=$_POST['email'];
$massagei=$_POST['massage'];
$main->register($emaili,$massagei);
}
?>
<html>
<head>
<script type="text/javascript" src="../js/register.js"></script>
<script type="text/javascript" src="../library/jquery.min.js"></script>
</head>
<body>
<div class="form">
<form method="post" action="" dir="rtl" id="relation">
<table>
<tr>
<td>ایمیل:</td>
<td><input type="email" name="email" id="email"></td>
</tr>
<tr>
<td>پیام:</td>
<td><textarea name="massage" rows="3" cols="50" id="massage"></textarea></td>
</tr>
<tr>
<td><input type="button" name="register" value="ارسال پیام" id="btn" onClick="sendrelation()"</td>
</tr>
</table>
</form>
<br>
</div>
<span class="answer"></span>
</body>
</html>
کد کلاسم
<?php
class connect
{
public $db;

function __construct()
{
$this->db=mysql_connect("localhost","root","") or die('can not connect to database');
mysql_query("SET NAMES 'utf8'",$this->db);
mysql_select_db("insurance",$this->db) or die('can not connect to db');
}
function register($email,$massage)
{
$query="INSERT INTO `relationship`VALUES ('$email', '$massage')";
$result=mysql_query($query,$this->db);
if($result)
{
echo 1;
}
else
echo 2;
mysql_close($this->db);
}
}
?>
کد جی کویری
// JavaScript Document
function sendrelation()
{
$.post("",{'email':$("#email").val(),'massage':$("#massage").val()},
function(Data)
{
$(".answer").html(Data);

});
  پاسخ
تشکر شده توسط :
#2
به جای
کد پی‌اچ‌پی:
echo 1
بنویس
کد پی‌اچ‌پی:
echo "1"
ببین نشون میده .

بعدشم توی فانکشن sendrelation که برای ارسال ajax نوشتی ، آدرس رو یادت رفته بنویسی
کد:
$.post("",{'email':$("#email").val(),'massage':$("#massage").val()},

بعد کدهات هم بدون هیچ گونه escape کردنی مقادیر رو توی دیتابیس ذخیره میکنی این باگ sql injection ایجاد میکنه برات .
وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان