رو بزنید میره در یک فایل خاص کلاس user رو اجرا می کنه و از داخل اون کلاس متد login رو اجرا می کنه و نمایش می ده!
خب به طور مثال اگه کسی اومد و این ادرس رو زد
site.com/asdasdasd
کلا یه ادرس بیهوده
میاد همچین خطا هایی به کاربر نشون می ده
Notice: Undefined offset: 2 in C:\xampp\htdocs\workspace\notes-v2\index.php on line 7
Warning: require_once(C:\xampp\htdocs\workspace\notes-v2/controller/useasdasd.php): failed to open stream: No such file or directory in C:\xampp\htdocs\workspace\notes-v2\index.php on line 14
Fatal error: require_once(): Failed opening required 'C:\xampp\htdocs\workspace\notes-v2/controller/useasdasd.php' (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\workspace\notes-v2\index.php on line 14
و این هم زیاد جالب نیست
اگه شرایط من خاص نبود به راحتی با یک خط کد htaccess می شد صفحه اختصاصی نوشت
ولی خب الان نمی شه چون هر ادرسی بزنیم سیستم میخواد با اون نام کلاسی رو اجرا کنه بعد متد اجرا کنه ولی نمیشه !!!!!!!!!!!!
چیکار کنم ؟؟ چطوری مثلا ادرس های الکی رو منتقل کنم ؟؟؟
hamid53214
April 3rd, 2017, 22:30
یه کد ساده به index.php اضافه کنید و ریدایرکت کنید در صورتی که کلاس وجود نداشته باشه ریدایرکت بشه به یه صفحه خاص
phpcoding
April 3rd, 2017, 22:36
یه اعتبار سنجی کوچیک مشکل شمارو حل میکنه
اول از همه از کد error_reporting استفاده کنید و ناتیس هارو خاموش کنید
سپس بعد از فراخوانی فایل مورد نظر یه اعتبار سنجی با استفاده از تابع class_exists انجام بدید که اگه کلاس وجود داشت کلاس رو صدا بزنه اگه نداشت یه خطایی بده یه صفحه ای نشون بده یا ...
اینم نمونه کد :
یه اعتبار سنجی کوچیک مشکل شمارو حل میکنه
اول از همه از کد error_reporting استفاده کنید و ناتیس هارو خاموش کنید
سپس بعد از فراخوانی فایل مورد نظر یه اعتبار سنجی با استفاده از تابع class_exists انجام بدید که اگه کلاس وجود داشت کلاس رو صدا بزنه اگه نداشت یه خطایی بده یه صفحه ای نشون بده یا ...
اینم نمونه کد :
اخه مشکل اینجاش من برای هر کلاس میام یه فایل ایجاد میکنم مثلا برای کلاس user اومدم فایل user.php رو ایجاد کردم
قبل از بررسی وجود اینکه کلاس هست یا نه
باید فایل رو require کنم
که به اون گیر میده !!!
اونو چیکار کنم ؟؟
بعد مورد دیگه نوتیس ها رو تو هاست اشتراکی چطوری خاموش کنم؟؟؟
برای خاموش کردن ناتیس ها در همه ی هاست دو کد وجود داره :
error_reporting(false | null | 0);
و یا :
ini_set("display_errors",(false | null | 0);
هر کدوم از کد های بالا (بسته به سلیقه خودتون - البته کارای هر کدوم مشخصه و هر کجا یک کدومشون به کار میاد ولی در اینجا مهم نیست) که خوشتون میاد رو کپی کنید و اول کد ها بعد از <?php قرار بدید
در مورد سوال دومتون اصلا از پرسیدن این سوال توسط شما من تعجب کردم !
نه اینکه خدا نکرده بخوام مسخرتون کنم ولی فک میکردم دیگه جواب این سوال رو بدونید
کافیه برای require یا include کردن اون فایل یه اعتبار سنجی انجام بدید که اون فایل وجود داشته باشه
نمون کد برای چهارتا تابع include - include_once - require - require_once رو براتون نوشتم خدمت شما :
$file = 'user.php';
if(is_file($file) AND file_exists($file)): include($file); endif;
if(is_file($file) AND file_exists($file)): include_once($file); endif;
if(is_file($file) AND file_exists($file)): require($file); endif;
if(is_file($file) AND file_exists($file)): require_once($file); endif;
با تشکر
mojtabakh18
April 3rd, 2017, 23:13
برای خاموش کردن ناتیس ها در همه ی هاست دو کد وجود داره :
error_reporting(false | null | 0);
و یا :
ini_set("display_errors",(false | null | 0);
هر کدوم از کد های بالا (بسته به سلیقه خودتون - البته کارای هر کدوم مشخصه و هر کجا یک کدومشون به کار میاد ولی در اینجا مهم نیست) که خوشتون میاد رو کپی کنید و اول کد ها بعد از <?php قرار بدید
در مورد سوال دومتون اصلا از پرسیدن این سوال توسط شما من تعجب کردم !
نه اینکه خدا نکرده بخوام مسخرتون کنم ولی فک میکردم دیگه جواب این سوال رو بدونید
کافیه برای require یا include کردن اون فایل یه اعتبار سنجی انجام بدید که اون فایل وجود داشته باشه
نمون کد برای چهارتا تابع include - include_once - require - require_once رو براتون نوشتم خدمت شما :
$file = 'user.php';
if(is_file($file) AND file_exists($file)): include($file); endif;
if(is_file($file) AND file_exists($file)): include_once($file); endif;
if(is_file($file) AND file_exists($file)): require($file); endif;
if(is_file($file) AND file_exists($file)): require_once($file); endif;