alirezaMoseni
5 سال پیش توسط alirezaMoseni مطرح شد
4 پاسخ

خالی بودن متغییر Post در پیام Ajax

سلام خسته نباشید
توی یه صفحه از سایتم میخوام که یه json رو با استفاده از ajax به سرور انتقال بدم
ajax هم با موفقیت و بدون اررور به سرور میرسه اما متغییر $_POST خالیه و هیچی توش نیست
وقتی از متد get استفاده میکنم json بدون هیچ مشکلی به سرور میرسه اما چون حجمش زیاده ارروره (Request-URI Too Long) میده
کدهای php:

<?php
    session_start();
    if ($_SESSION['user'] != 'admin') {
        header("location:login.php");
    }
    include 'connect.php';
    if (isset($_POST['mydata'])) {
        ...
    }
    var_dump($_POST);
?>

کدهای js:

$('#submit').click(function () {
    $.ajax({
        type: 'POST',
        url: "excelfaragiran.php",
        data: oJS,
        success: function (msg) {
            console.log(msg);
        }
    });
});

خیلی در موردش سرچ کردم اما به نتیجه ای نرسیدم و دیگه شما آخرین امیدم هستین :))


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 5 سال پیش مطرح شد
1

مواردی که به ذهنم میرسه:

۱- یک خط بالاتر از ارسال درخواست ajax آبجکت oJS تون رو در کنسول لاگ کنید و از چیزی که داره ارسال میشه مطمئن بشید.
۲- یک محتوای hard code شده و خیلی ساده در data قرار بدید و ببنید بازهم $_POST خالی هست یا نه.
۳- شاید کمی عجیب باشه ولی مقدار POST رو به post تغییر بدید و مجدد امتحان کنید.
۴- تا جایی هم که مشخصه از هیچ فریم ورک php استفاده نمیکنید و کاملا pure هست. ولی اگر غیر این حالت هست توجه داشته باشید که معمولا در درخواست هایی از نوع POST یک سری مسائل اضافه تر برای امنیت بیشتر وجود داره. مثلا در لاراول همراه هر درخواست پست باید CSRF_TOKEN هم ارسال بشه و الا کلا درخواست اجرا نخواهد شد.


alirezaMoseni
@alireza.moseni 5 سال پیش مطرح شد
0

@mhyeganeh سلام
اول ممنون که وقت گذاشتی و راهنمایی کردی
به جز مورد 3 همه راه هارو امتحان کرده بودم و نتیجه ای نداشتن
شاید باورتون نشه اما

url: "excelfaragiran.php"

رو به

url: "excelfaragiran"

تغییر دادم درست شد :| :|
اما برخلاف تصورم متغییر post هم محدودیت داشت و اررور داد و مجبور شدم از php.ini مقدار max_input_vars رو از 1000 به 20000 تغییر بدم
سوالی که دارم اینه که این کار مشکلی ایجاد نمیکنه؟
به نظرتون از همین روش ajax استفاده کنم بهتره یا اینکه اطلاعاتم رو به صورت فایل منتقل کنم؟


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش مطرح شد
1

سلام
@alireza.moseni

احتمالا کش داشتید که اون طرف خالی برمیگردونده اطلاعات رو
خیر تفاوتی نداره
اما اصولی ادرس رو بزنید بهتره
هرچند به تنظیمات وب سرور هم مربوط هست و نحوه آدرس دهی ها
فرقی نداره
موفق باشید


kaveh32
تخصص : طراح وب
@kaveh323471 2 سال پیش مطرح شد
0

نکته جالبی بود😍😍


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

ورود یا ثبت‌نام