CE1.9.1 ব্যবহারকারী রেজিস্ট্রেশন সময় আপনার পাসওয়ার্ড ম্যাচ সমস্যা নিশ্চিত করুন


23

আমি সিই ১.৯.১ এ এই সমস্যাটি মোকাবিলা করছি।

যখন কোনও ব্যবহারকারী নিবন্ধন করে (চেকআউট করার সময় বা অ্যাকাউন্ট তৈরি লিংক থেকে এটি কোনও ব্যাপার না) পাসওয়ার্ডটি সঠিকভাবে পুনরায় প্রবেশ করানো সত্ত্বেও ব্যবহারকারী পাসওয়ার্ডের অমিল ত্রুটি পেতে থাকে।

ফর্মটির বৈধতা কোনও মিস-মিলকে বোঝায় না, তবে একবার ব্যবহারকারী কোনও নিবন্ধটিতে ক্লিক করলে এটি মিল না পেয়ে ত্রুটি ফিরে আসে।

ক্রোম কনসোলে কোনও ত্রুটি নেই ...

আমি এটি পেয়েছি: "দয়া করে আপনার পাসওয়ার্ডগুলি মেলে তা নিশ্চিত করুন" - নতুন রেজিস্ট্রেশন ফর্মের সাথে চেকআউটে পাসওয়ার্ড ত্রুটি

তবে আমি বিশ্বাস করি না এটি একই ত্রুটি।

আমি শীঘ্রই এটি ঠিক করা প্রয়োজন, যে কোনও সাহায্যের প্রশংসা করা হয়!


এটি চেকআউট কার্টে ত্রুটিটি ঠিক করে তবে "আমার অ্যাকাউন্ট" বিভাগটি কাজ করতে আমাকে (প্রশাসক | সিস্টেম | সরঞ্জাম | সংকলন) এর সংকলকটি অক্ষম করতে হয়েছিল। (পুনরায় সংকলন সম্ভবত পাশাপাশি কাজ করবে)
ওয়াইরডগ

উত্তর:


24

পরিবর্তে ক্লাসের বাচ্চাদের Mage_Customer_Model_Customerব্যবহার getPasswordConfirmation()করা উচিতgetConfirmation()

আপডেট: শ্রেণিতে Mage_Customer_Model_Customer, পদ্ধতিটি validate()পরিবর্তন করা হয়েছিল

V1.9.1 এর আগে:

$confirmation = $this->getConfirmation();

পরে:

$confirmation = $this->getPasswordConfirmation();



এছাড়াও নোট করুন যে আপনার যে কোনও নিয়ামককে ওভাররাইডগুলিও পরীক্ষা করা উচিত, কেবল এই ক্লাসটি প্রসারিত মডেলগুলি নয়!
benz001

2
কোনও ই-কমার্স স্টোর কেনা ক্রয়কে QA এর মাধ্যমে এবং অফিসিয়াল রিলিজের মাধ্যমে পরিণত করতে পারে তা বন্ধ করার জন্য মন কীভাবে কুঁচকে যায়।
মাইকিমেকে

1
এছাড়াও কিছু এক্সটেনশনের সেটপ্যাসওয়ার্ড কনফার্মেশন () সেট করে কনফার্মেশন () সেট করতে হবে। এটি আমার ক্ষেত্রে ফায়ার চেকআউট ছিল। শ্রেণি: টিএম_ফায়ারচেকআউট_ মডেল_টাইপ_ স্ট্যান্ডার্ড, পদ্ধতি: _অডিয়ালিস্ট কাস্টমারডেটা ()।
জি সরি

5

অবশেষে, আমি সমস্যাটি সমাধান করতে সক্ষম হয়েছি।

আমার উল্লেখ করতে হবে এটি খুব ভাল নয় যে ম্যাজেন্টো কোর ফাইলগুলির মধ্যে এই জাতীয় সমস্যা রয়েছে যখন তারা পাসওয়ার্ডগুলি সুরক্ষিত করে, অনুমান করুন যে মূল বিকাশকারীরা কিছু সাধারণ জিনিস ভুলে গিয়েছিল।

ঠিক আছে, সুতরাং এই সমস্যাটি সমাধান করতে আপনাকে স্থানীয় পছন্দ মতো মূল গ্রাহক মডেলটিকে ওভাররাইড করতে হবে app/code/local/Mage/Customer/Model/Customer.php। এটি প্রায় নং লাইনে যান। 843 (যদি আপনি ইতিমধ্যে ওভাররাইড না করে থাকেন) বা লাইনে যান if (strlen($password) && !Zend_Validate::is($password, 'StringLength', array(6))) { $errors[] = Mage::helper('customer')->__('The minimum password length is %s', 6); }এবং সেই ব্লকের নীচে নিম্নলিখিত কোডটি যুক্ত করুন:

//To match passwords in both Create account and Checkout register pages start
    if ( Mage::app()->getRequest()->getServer('HTTP_REFERER') == Mage::getUrl('customer/account/create') )
      $confirmation = $this->getPasswordConfirmation();
    else
      $confirmation = $this->getConfirmation();
    //To match passwords in both Create account and Checkout register pages end

এর পরে "চেকআউট" এবং "অ্যাকাউন্ট তৈরি করুন" উভয় পৃষ্ঠায় পাসওয়ার্ড এবং নিশ্চিত পাসওয়ার্ড মিলবে।

আশা করি এটি কারও সাহায্য করতে পারে।


3

যদি এখনও কেউ সনাক্ত করতে না পারে তবে কেন এটি হচ্ছে: কনল্যাব ইউজারোপটিন এক্সটেনশন ( http://www.magentocommerce.com/magento-connect/newsletter-double-opt-in-for-customers.html ) এর কারণ হতে পারে পাশাপাশি আচরণ।

কথিত এক্সটেনশনের 1.1.0 আপডেট করুন 1.9 সামঞ্জস্য যোগ করে


3

আমার একটি এক্সটেনশান রয়েছে যা অ্যাকাউন্টকন্ট্রোলআরএফপি ওভাররাইড করে এবং ১.৯.১ এর নীচে ম্যাজেন্টো প্ল্যাটফর্মগুলির জন্য একই সমস্যা ছিল

আমার সমাধান ছিল;

if (version_compare(Mage::getVersion(), '1.9.1', '<=')) {        
$customer->setPasswordConfirmation($request->getPost('confirmation'));
}

if (version_compare(Mage::getVersion(), '1.9.0', '>=')) {
$customer->setConfirmation($request->getPost('confirmation'));
}

2

আমার পক্ষে $this->getPasswordConfirmation()বা $this->getConfirmation()কাজ হয়নি। দুজনেই খালি স্ট্রিং ফিরিয়ে দিল। সুতরাং আমি সরাসরি পোষ্ট প্যারামিটারটি অ্যাক্সেস করে শেষ করেছি, /app/code/core/Mage/Customer/Model/Customer.php(হ্যাঁ, আরও ভালভাবে একটি অনুলিপি ব্যবহার করুন /app/code/local):

if (isset($_REQUEST['confirmation']))
    $confirmation = $_REQUEST['confirmation'];
else
    $confirmation = $this->getPasswordConfirmation();

1
হা হা গুড ক্র্যাক :)
কিয়ুর শাহ

0

এটি 1.9.1 আপডেটে পরিবর্তনের কারণে। আপনাকে আপনার এক্সটেনশান কোডগুলি আপডেট করতে হবে - নিবন্ধের সময় গ্রাহক পাসওয়ার্ডগুলি পরিষ্কার লেখায় আর সংরক্ষণ করা হয় না।


আমি দেখছি, আমি এক্সটেনশন কোডগুলি যাচাই করব। ধন্যবাদ!
বিল

0

আমি চেকআউটের জন্য তৃতীয় পক্ষের এক্সটেনশনটি ব্যবহার করছি বলে আমারও একই সমস্যা রয়েছে তাই এই সমস্যাটি আসতে হবে

আমি নিম্নলিখিত পদক্ষেপগুলি করে সেই ত্রুটিটি সমাধান করেছি

1) আমার মডিউলে আমি অনুসন্ধান করি confirmation

2) এটি customerমডেলের জন্য ডেটা সেট করছে কিনা তা পরীক্ষা করুন

3) তারপর কী পরিবর্তন password_confirmationথেকেconfirmation

আমি সমস্যাটি ডিবাগ করতে এবং সমাধান করার জন্য উপরের পদক্ষেপগুলি অনুসরণ করি।


0

আমার সমাধান ছিল

$confirmation = $this->getPasswordConfirmation(); // test works for Create, fails for Checkout
    if ($password != $confirmation) {
        $confirmation = $this->getConfirmation(); // test works for Checkout fails for Create
        if ($password != $confirmation) {
            $errors[] = Mage::helper('customer')->__('Please make sure your passwords match.');
        }
    }

-3

হাই বন্ধু এই সমস্যাটি নীচের পদক্ষেপগুলি দ্বারা সমাধান করা যেতে পারে:

পদক্ষেপ 1: এই ফাইলটি খুলুন /app/code/core/Mage/Customer/Model/Customer.php
পদক্ষেপ 2: Customer.php $confirmation = $this->getPasswordConfirmation(); পদক্ষেপ 3 এ এই লাইনটি সন্ধান করুন: সেই লাইনটি সেই সাথে প্রতিস্থাপন করুন $confirmation = $this->getConfirmation();

আপনার সমস্যা এখন সমাধান হয়েছে।


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