PDA

View Full Version : ذخیره خودکار تغییرات با جاوا اسکریپت



masiha68
سه شنبه 20 اسفند 1392, 07:42 صبح
سلام
دنبال کدی هستم که وقتی تغییری توی یک فرم داده میشه به صورت خودکار اونو ذخیره کنه ... حالت auto save
توی سیو کردنش توی دیتابیس مشکلی ندارم و اون با پی اچ پی می نویسم ولی نمی دونم چطوری اونو اوتو سیو کنم
کسی هست بتونه کمک کنه ؟

_________
اینو توی تالار جاوار اسکریپت هم پرسیدم ولی اونجا خلوته و منم به جوابش نیاز دارم .

فرزند کوروش
سه شنبه 20 اسفند 1392, 08:52 صبح
با ای جکس انجام بده. شرط بزار اگه تمام فیلدها پر شده بود یه درخواست ارسال بشه و اطلاعات فرمها رو تو پس زمینه بفرسته به سرور و اینسرت و ... :D

masiha68
سه شنبه 20 اسفند 1392, 09:01 صبح
واقعیتش اینه اینو واسه ی پلاگین های سیستم میخام که به صورت دارگ می شه اونا رو کشید و جابجا کرد . منم اومدم قالب سایت رو با فرم توی قسمت ادمین پنل درست کردم و پلاگین ها رو یه گوشه گزاشتم تا کاربر بتونه اونا رو بکشه و بزاره توی فرم .... حالا میخام بعد اینکه هر پلاگین رو توی فرم گذاشت اون فرم بصورت خودکار اون بخش رو اپدیت کنه
و اینکه اطلاعات خاصی در مورد جاوا اسکریپت و اجاکس ندارم
** بیشتر دنبال یه کد اماده :دی

metal gear solid 4
سه شنبه 20 اسفند 1392, 11:10 صبح
مطمئناً دارین از jquery-ui استفاده میکنید. توی قسمت Droppable چیزی که میخاید هست.
http://jqueryui.com/droppable/
(http://jqueryui.com/droppable/)


$( "#droppable" ).droppable({
drop: function( event, ui ) {
$.post('yourfile or path', { params in json format }, function(data){
console.log( data );

}, 'json');
}
});

// your file or path. masir file php
// params in json format: be onvane mesal {"id" : "1", "name" : "ali"}

یه چیزی شبیه به اسکریپت بالا. کار شما رو راه میندازه. البته یه تغییراتی باید توش انجام بدید.

masiha68
چهارشنبه 21 اسفند 1392, 20:08 عصر
مطمئناً دارین از jquery-ui استفاده میکنید. توی قسمت Droppable چیزی که میخاید هست.
http://jqueryui.com/droppable/
(http://jqueryui.com/droppable/)


$( "#droppable" ).droppable({
drop: function( event, ui ) {
$.post('yourfile or path', { params in json format }, function(data){
console.log( data );

}, 'json');
}
});

// your file or path. masir file php
// params in json format: be onvane mesal {"id" : "1", "name" : "ali"}

یه چیزی شبیه به اسکریپت بالا. کار شما رو راه میندازه. البته یه تغییراتی باید توش انجام بدید.
درست فهمیدید ... اما چیزی از این کد سر در نیاوردم
دو روزه دارم دنبال این موضوع می گردم ولی چیزی پیدا نکردم . امکانش هست بیشتر راهنمایی کنید .

metal gear solid 4
پنج شنبه 22 اسفند 1392, 19:56 عصر
$( "#droppable" ).droppable({
drop: function( event, ui ) {
$.post('save.php', { plugin_id: id, param2: value2, param3: value3 }, function(data){
console.log( 'plugin saved successfully' );
}, 'json');
}
});


تصور کن یک فایل save.php داری که پارامترهای ورودی رو دریافت میکنه. با استفاده از کد بالا. شما

$_POST['plugin_id]
رو به این فایل ارسال میکنید.
به کد جاوااسکریپت دقت کنید. به فرمتی که پارامترها رو نوشتم میگن JSON. که بر اساس Key:Value هست.
Key ها در سمت PHP از طریق متد پست دریافت میشن.

$_POST['plugin_id]
باقی موارد رو که با PHP مدیریت میکنید. دیگه هیچ ارتباطی به AJAX نداره.
اما هنگام خروجی باید نتایج رو به صورت JSON برگردونید.
میتونید از این کد استفاده کنید.

json_encode("plugin saved successfully");

یا یک آرایه رو تبدیل به JSON کنید و بفرستید


$arr = array( 'status' => 'OK', 'content' => 'plugin saved successfully' );

json_encode($arr);

سمت جاواسکریپت هم میتونید JSON ارسال شده از PHP رو به این صورت بخونید.

console.log( data.content )
ببینید این کد کنسول رو کجای کد جاوااسکریپت نوشتم. همونجا نتایج رو نشون بدید.

موفق باشید.