পুরো _P _POST পাওয়ার উপযুক্ত উপায় কী?


26

জুমলায়! 2.5.x আমি কেবল চালাতে পারি JRequest::get('post');কিন্তু জুমলাতে অবনমিত হিসাবে দেখছি JRequest! 3.x আমার ব্যবহার করা উচিত JInput।

তাদের মুহূর্তে এই কোডটি আমি পুরোটি পেতে ব্যবহার করছি $_POST:

$app = JFactory::getApplication();
$postData = $app->input->getArray(array_flip(array_keys($_POST)));

তবে এটি বরং জটিল বলে মনে হচ্ছে এবং আমি যদি $app->input->set();মনে করি যে এর চেয়ে আরও ভাল উপায় থাকবে তবে আমি ইস্যুগুলিতে চলে যাই?

এর আগে অনুসন্ধান করার আগে আমি লোকদের বলছিলাম যে আপনি চালাতে পারবেন

$app = JFactory::getApplication();
$postData = $app->input->post;

কিন্তু যখন আমি এটি চেষ্টা করেছিলাম তখন কেবলমাত্র JInputবস্তুর একটি উদাহরণ পেলাম ।


উত্তর:


31
$app = JFactory::getApplication();
$postData = $app->input->post;

যাওয়ার উপায় কী, আপনি একটি জিনপুট অবজেক্ট পাবেন এবং এটি জেআরকেস্টের মতো ব্যবহার করতে পারেন

$var = $postData->get('varname', 'defaultvalue', 'filter');

ফিল্টারটি 'ইনট', 'সেন্টিমিডি' বা আরও অনেকগুলি হতে পারে - সম্পূর্ণ তালিকাটি এই ফাংশনটিতে পাওয়া যাবে: https://github.com/joomla/joomla-cms/blob/a3df15f1ddad6d9051d53f939b6afd2f5fca60b7/libraries/joomla/filter/input .php # L138

আপনি যদি কেবল অ্যারে পছন্দ করেন তবে আপনি এটি করতে পারেন

$array = $app->input->post->getArray();

তবে আপনার ফিল্টারিং ছাড়াই ব্যবহারকারীর ডেটা অ্যাক্সেস করার এই স্টাইলটি এড়ানো উচিত ।


1
প্রায়শই আমাকে $_POSTযে ওয়ারগুলির দরকার তা নামগুলি না জেনে আমার পুরোটা পাওয়া দরকার, সেই কারণেই এই জাতীয় জিনিসটি ব্যবহার JInputকরা অনেক ক্ষেত্রে কার্যকর হয় না। এখনও একটি ভাল উত্তর যদিও।
— স্পুঙ্কি

2
একটি এফওয়াইআই হিসাবে $app->input->post->getArray();এটি কেবল জুমলা ৩.২.০ এবং তার পরে বৈধ। এবং পূর্ববর্তী কোনও সংস্করণে (2.5 সহ) আপনাকে ব্যবহার করতে হবে$app->input->getArray($_POST)
— জর্জ উইলসন

3

এটি সম্পাদন করার অন্য একটি উপায় বলে মনে হচ্ছে খালি অ্যারেটি কেবল পাস করা:

$app = JFactory::getApplication();
$postData = $app->input->getArray(array());

এটি JInputডেটা ভারে সমস্ত কিছু পুনরুদ্ধার করবে যেন আপনি সুপারটি অ্যাক্সেস করছেন $_REQUEST।

এটি জুমলার কাজ করে না! JInputযদিও 2.5.x সংস্করণ ।


-3

আশা করি এটি কার্যকর হবে,

JRequest :: পেতে ( 'পোস্টে);

এটি আপনাকে পিএইচপি-তে সমতুল্য $ _POST থেকে ডেটা আনতে সহায়তা করবে।


2
প্রশ্নটি পরিষ্কারভাবে বলেছে যে এই পদ্ধতিটি অবচিত করা হয়েছে, সুতরাং ওপেন জিনপুট ব্যবহার করে আপডেট পদ্ধতিটি সন্ধান করছে।
— ডেভিড ফ্রেটস

@ হ্যারাল্ড আপনি কি এই বিশেষ উত্তরটি আপনার বিশেষ সুযোগসুবিধা দিয়ে মুছে ফেলতে চান? এই ব্যবহারকারীর মনে হয় "অনেক আগে" চলে গেছে।
— মিকম্যাকুসা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.