PDA

View Full Version : error هنگام حذف



Emir New
شنبه 26 بهمن 1392, 23:11 عصر
سلام
من تا دیروز داشتم روی پروژه ای که برای خودم مطرح کرده بودم کار می کردم بدون هیچ مشکلی
امروز که اومدم روش کار کنم هنگام حذف با این پیغام رو برو شدم باید چکار کنم ؟


Error 400

Your request is invalid.

nadi_1368
شنبه 26 بهمن 1392, 23:33 عصر
ادرسی شما نا معتبر است
مثلا ای دی برای اکشن delete ارسال نشده که این خطا را صادر میکند

Emir New
یک شنبه 27 بهمن 1392, 00:09 صبح
توی گرید ویو این خطا رو میده
حالا راه حل چی هست ؟
الان دیدم ای دی هم توی لینکش هست

MMSHFE
یک شنبه 27 بهمن 1392, 10:04 صبح
چه لینکی برای Delete تولید شده؟ کد اکشن actionDelete شما چیه؟ متد accessRules کنترلر رو چطور تنظیم کردین؟ این خطا میتونه منشأهای مختلفی داشته باشه.

Emir New
یک شنبه 27 بهمن 1392, 11:25 صبح
actionDelete و accessRules رو فعلا دست بهش نزدم و همون مقدار اولیه رو داره که خود yii ساخته
در مورد لینک تولید شده حقیقت من تا شب دسترسی به سیستمم ندارم و چیزی یادم نمیاد که چطوری بوده ؟
ولی یادم هست نگاه کردم ایدی رو داشت

MMSHFE
یک شنبه 27 بهمن 1392, 11:26 صبح
پس شاید توی accessRules دسترسی بهش به کسی ندادین.

bestirani2
یک شنبه 27 بهمن 1392, 13:00 عصر
filters هات رو بگذار اینجا
یا فیلترهات رو کامنت کن، میبینی که مشکلت حل میشه.
این خطا رو وقتی میده که شما دسترسی به صفحه رو محدود به یه حالت کردید مثلاً گفتید فقط از طریق ajax میشه به این صفحه دسترسی داشت ولی چون این صفحه با آژاکس فراخونی نشده این پیغام رو میده

MMSHFE
یک شنبه 27 بهمن 1392, 13:15 عصر
شاید هم postOnly روی Delete فعاله و به قول دوستمون شما با Get (بدون Ajax با روش Post) دارین صداش میزنید.

Emir New
یک شنبه 27 بهمن 1392, 20:10 عصر
بسیار خب
این کد accessRules


public function accessRules()
{
return array(
array('allow', // allow all users to perform 'index' and 'view' actions
'actions'=>array('index','view'),
'users'=>array('*'),
),
array('allow', // allow authenticated user to perform 'create' and 'update' actions
'actions'=>array('create','update'),
'users'=>array('@'),
),
array('allow', // allow admin user to perform 'admin' and 'delete' actions
'actions'=>array('admin','delete'),
'users'=>array('admin'),
),
array('deny', // deny all users
'users'=>array('*'),
),
);
}

این هم کد actionDelete


public function actionDelete($id)
{
$this->loadModel($id)->delete();

// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
if(!isset($_GET['ajax']))
$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
}

و این هم فیلتر هام



public function filters()
{
return array(
'accessControl', // perform access control for CRUD operations
'postOnly + delete', // we only allow deletion via POST request
);
}


این هم کد ایجاد شده



<a class="delete" title="Delete" href="/shop/index.php?r=administrator/menuType/delete&amp;id=3">

استاد من به کد ها تا الان دست نزدم و هنوز تازه این قسمت رو ایجاد کردم که این ارور رو میده و
جالب تر این هست که بقیه قسمت ها هم همینطور شده

MMSHFE
یک شنبه 27 بهمن 1392, 21:25 عصر
الآن وقتی روی لینک Delete کلیک میکنید، پیغام تأیید ظاهر میشه؟ میتونید TeamViewer بدین؟

Emir New
یک شنبه 27 بهمن 1392, 22:54 عصر
بله استاد میشه

MMSHFE
یک شنبه 27 بهمن 1392, 23:01 عصر
اطلاعات Remote Connection برنامه TeamViewer رو برام پیام خصوصی کنید تا به سیستمتون وصل بشم ببینم مشکل از کجاست.