بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
بروزرسانی فیلدها پس از استفاده از ajax
سلام دوستان من به مشکلی برخوردم. کاربر در فرم ویرایش اطلاعات مشخصات خودش را ویرایش میکنید و با استفاده از ajax مقادیری که او میخواهد ویرایش میشود و در پایگاه داده ثبت میشود ولی در همان لحظه در فرم آپدیت نمیشه باید حتما از سایت خارج شه و دوباره وارد شه تا مقادیر جدید نشون داده بشه. چه راهی هست برای رفع این مشکل
+1
0
حدس من اینه که مقادیر مربوطه در کوکی یا Session ی ذخیره شده که تا پاک نشن و دوباره بازنویسی نشن همون باقی میمونه. با خروج کابر احتمالا طوری کد نوشتید که Session به روز یا پاک بشه. در چنین AJAX هایی تست کنید که اطلاعات Session هم دوباره بازنویسی بشن. (10 سال پیش)
0
0
من کدامو با استفاده از فریمورک CI نوشتم و زیاد با session کار نکردم که تغییرش بدم فقط در لحظه ورود در session اطلاعاتشو ثبت میکنم (10 سال پیش)
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
علی
10 سال پیش
0
0
من در آخر تابع edit اومدم و مقادیر session رو آپدیت کردم ولی بازم در فرم چیزی نشون نمیده باید حتما خارج بشه بعد ببینه
public function update_session($user_id, $newData) {
$person = $this->User_model->get_row($user_id);
$user_data = array(
'userID' => $person->user_id,
'fullName' => $person->user_first_name . ' ' . $person->user_last_name,
'firstName' => $person->user_first_name,
'lastName' => $person->user_last_name,
'userEmail' => $person->user_email,
'userPassword' => $person->user_password,
'userCity' => $person->user_city,
'userState' => $person->user_state,
'userZip' => $person->user_zip,
'userPhone' => $person->user_phone,
'userMobile' => $person->user_mobile,
'userAddress' => $person->user_address,
'userRegisterTime' => $person->user_create_date,
'userLastVisitTime' => $person->user_last_visit,
'logged_in' => true
);
if ($user_data['userPhone'] != $newData['user_phone'])
$user_data['userPhone'] = $newData['user_phone'];
if ($user_data['userMobile'] != $newData['user_mobile'])
$user_data['userMobile'] = $newData['user_mobile'];
if ($user_data['userAddress'] != $newData['user_address'])
$user_data['userAddress'] = $newData['user_address'];
if ($user_data['lastName'] != $newData['user_last_name'])
$user_data['lastName'] = $newData['user_last_name'];
if ($user_data['userCity'] != $newData['user_city'])
$user_data['userCity'] = $newData['user_city'];
if ($user_data['userState'] != $newData['user_state'])
$user_data['userState'] = $newData['user_state'];
if ($user_data['userZip'] != $newData['user_zip'])
$user_data['userZip'] = $newData['user_zip'];
if ($user_data['firstName'] != $newData['user_first_name'])
$user_data['firstName'] = $newData['user_first_name'];
echo "Update Successful";
//set User Data In Session
$this->session->set_userdata($user_data);
}
پاسخ به سوال
علی
10 سال پیش
+1
0
خب این مشکل حل شد . بدین صورت که تابع بالا باید صدا زدنش به این صورت می بود کلمه this قبل از تابع نوشته نشده بود
$this->session_update(.......
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .