۱۸ zynb moallemi
Internal Server Error
جامعه پی اچ پی ایجاد شده در ۱۲ بهمن ۱۴۰۱

سلام این ارور برای چیه؟

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at postmaster@localhost to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

Apache/2.4.54 (Win64) OpenSSL/1.1.1p PHP/8.1.12 Server at localhost Port 80

سلام

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

احمدرضا فاطمی کیا ۱۲ بهمن ۱۴۰۱، ۱۷:۵۲

وقتی می‌خوام درخواست ارسال کنم این مشکل و میده

zynb moallemi ۱۲ بهمن ۱۴۰۱، ۱۸:۳۸

بیشتر توضیح بدید؟

درخواست رو با فرم ارسال میکنید؟

احمدرضا فاطمی کیا ۱۲ بهمن ۱۴۰۱، ۱۸:۵۸

نه یه درخواست ساده مثل خود استاد انجام دادم الان سورس کد و براتون میفرستم

zynb moallemi ۱۲ بهمن ۱۴۰۱، ۱۹:۰۶

https://github.com/zeinab2038/sold/blob/main/Iran.zip

خدمت شما

zynb moallemi ۱۲ بهمن ۱۴۰۱، ۱۹:۱۱

توی فایل اتولودرتون بجای __DIR__ از آدرس روت پروژه استفاده کنید.


احمدرضا فاطمی کیا ۱۲ بهمن ۱۴۰۱، ۱۹:۲۴

//include "App/iran.php";

spl_autoload_register(function($class){

$class_file ="../iran/".$class.".php";

if(!(file_exists($class_file) && is_readable($class_file)))

    die ("$class not");

    include_once $class_file;

});


حالا فایل و پیدا نمی‌کنه:)

zynb moallemi ۱۳ بهمن ۱۴۰۱، ۱۷:۲۰

لطفا کدام و چک کنید و درستش و بهم بگید

https://github.com/zeinab2038/sold/blob/main/Iran.zip

zynb moallemi ۱۳ بهمن ۱۴۰۱، ۱۷:۳۵

به این شکل باید قرار بدید:

$classfile="c:/xampp/htdocs/iran/.$class.php";
احمدرضا فاطمی کیا ۱۳ بهمن ۱۴۰۱، ۲۰:۴۱

درست نمیشه من چیکارکنم

مشکل از لوکال هاسته؟؟ دقیقا مشکل از چیه

zynb moallemi ۱۵ بهمن ۱۴۰۱، ۱۶:۰۴

سلام،

به چه صفحه ای درخواست ارسال میکنید؟ (آدرسی که در url میذارید)

فایل .htaccess داخل روت پروژه یا فولدر htdocs ندارید؟

داخل صفحه یک دستور echo 'test' خالی بنویسید ببینید اصلا به صفحه دسترسی دارید یا نه.

قدم به قدم جلو پیش برید.

محسن موحد ۱۵ بهمن ۱۴۰۱، ۱۹:۲۲

به صفحه دسترسی دارم می‌خوام درخواست ارسال کنم ارور میده کد و فرستادم

از اولش هم مشکل اینکلود کردن داشتم تا به الان

zynb moallemi ۱۵ بهمن ۱۴۰۱، ۱۹:۳۴

آدرسی که درخواست ارسال میکنیدو بذارید.

محسن موحد ۱۵ بهمن ۱۴۰۱، ۱۹:۴۲

class Responce{

    public static function respond($data,$status_code = self::HTTP_OK){

        //ست کردن هدر

       self::setHeadesrs($status_code);

        //درخواست

        $responcse=[

            'http_status'=>$status_code,

            'http_message'=>self::$STATUS_TEXT[$status_code],

            'data'=>$data

        ];

        //json

        return json_encode($responcse);

    }

    public static function DieAndrespond($data,$status_code = self::HTTP_OK){

        die(self::respond($data,$status_code ));

}

    //set http headers

    public static function setHeadesrs($status_code){

        //از چه دامنه‌های اطلاعات بگیرهخ و بهش پاسخ دریافت کنه؟

        header("Access-Control-Allow-Origin: *");

        //باید همیشه باشد چون فایل جیسون داریم

        header('Content-Type: application/json; charset=utf-8');

        //محدود کردن متدها

        header("Access-Control-Request-Method : GET,POST,PUT,DELETE");

        //

        header("Access-Control-Max-Age=3600 ");

        //هدرهای مجاز مورد استفاده

        header("Access-Control-Allow-Headers:Content-Type, Access-Control-Allow-Headers,Authorization");

        //پاسخ

        header("http 1/1 $status_code".self::$STATUS_TEXT[$status_code]);


    }

zynb moallemi ۱۵ بهمن ۱۴۰۱، ۱۹:۴۵

آدرس url ای که درخواست میفرستیدو منظورمه. آدرسی که براساس کدی که گذاشتید به این خطا میخورید.

مثلا: http://localhost/iran/api/v1/etc

محسن موحد ۱۵ بهمن ۱۴۰۱، ۱۹:۵۵

http://localhost/iran2/api/v1/cities/

zynb moallemi ۱۵ بهمن ۱۴۰۱، ۱۹:۵۷

خطا مربوط به ست کردن header است.

کلاس Response قسمت set header لاین 26 اینو جایگزین کنید:

header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
بهترین پاسخ
محسن موحد ۱۵ بهمن ۱۴۰۱، ۲۰:۳۰

خیلی ممنون

zynb moallemi ۱۵ بهمن ۱۴۰۱، ۲۰:۳۸