Geçersiz e-posta adresi “admin@eternal.florist”


13

Merhaba bu yeni süslü alan adını aldım ve şimdi başım dertte. Magento admin mağaza e-posta adresleri içine ayarlamak için çalışıyordu. Ve yukarıdaki hatayı aldım. Ben ne yaparım?

(Ben de DB değiştirmek için çalıştı. Ama onu tutan tablo bulamıyorum)

Yanıtlar:


4

Aşağıdaki ifadeyi çalıştırın:

SELECT * 
FROM  `core_config_data` 
WHERE  `path` LIKE  '%email%'
LIMIT 0 , 30

Temel olarak değerleri orada düzenleyebilirsiniz. Bakmak isteyeceğiniz ana olanlar:

  • trans_email/ident_general/email,
  • trans_email/ident_salse/email, ve
  • trans_email/ident_support/email

PS

1.7.0.2'de bu e-posta adresini doğrularken bir hata almıyorum, aşağıdaki Modelin yerel bir geçersiz kılmayı deneyebilirsiniz:

app/code/core/Mage/Adminhtml/Model/System/Config/backend/Email/Address.php dan:

protected function _beforeSave()
{
    $value = $this->getValue();
    if (!Zend_Validate::is($value, 'EmailAddress')) {
        Mage::throwException(Mage::helper('adminhtml')->__('Invalid email address "%s".', $value));
    }
    return $this;
}

için

protected function _beforeSave()
{
    $value = $this->getValue();
    /*if (!Zend_Validate::is($value, 'EmailAddress')) {
        Mage::throwException(Mage::helper('adminhtml')->__('Invalid email address "%s".', $value));
    }*/
    return $this;
}

Bu temel olarak doğrulama işlemini atlar.


21

Hangi Magento sürümünü kullandığınızı belirtmediniz, ancak <CE 1.9.1.0 veya <EE 1.14.1.0 olduğunu varsayıyorum. Bu durumda çözüm Magento'yu CE 1.9.1.0'a yükseltmektir .

Magento, Zend_Validate_Hostnameen üst düzey etki alanını doğrulamak için Zend Framework'ü (veya daha spesifik: sınıf ) kullanır.

CE 1.9.0.0 ve ilgili EE versiyonunda Magento, Zend Framework 1.12.3'ü kullandı. Bu sürüm yeni üst düzey alanları desteklemiyordu. Bu nedenle hem ön uçtaki hem de arka uçtaki doğrulama başarısız olur.

CE 1.9.1.0 ve EE 1.14.1.0'da Magento, Zend Framework'ü 1.12.7'ye güncelledi. Bu sürüm, bunlardan biri olan birkaç yeni üst düzey alan adı uygular .florist.

Bununla birlikte, şu anda Magento'nun şu anki sürümünde desteklenmeyen başka üst düzey alanlar da var . Henüz dahil edilmemiş olan Zend Framework 1.12.10'da, birçok yeni adres ekleyen ana makine adı doğrulamasında başka bir güncelleme daha vardı.

Yapabilirdiniz:

  • kopyalamak lib/Zend/Validate/Hostname.phpiçinapp/code/local/Zend/Validate/Hostname.php
  • 2014/10/24 tarihinden Zend_Validate_Hostname dosyasını edinin (dosyayı kopyalamak çok uzun, bu yüzden lütfen GitHub'a gidin),
  • kopyalamak $_validTldsiçin GitHub barındırılan sürümden değişkeni sizin Hostname.php ve
  • değiştirmek

    // First check TLD
    $matches = array();
    if (preg_match('/([^.]{2,10})$/i', end($domainParts), $matches) ||
    

    ile

    // First check TLD
    $matches = array();
    if (preg_match('/([^.]{2,63})$/i', end($domainParts), $matches) ||
    

Bu, 10 karakterden uzun olanlar da dahil olmak üzere yeni üst düzey alanlara izin verir.


Bu bir güncelleme ile çözülür gibi, ben doğrudan bir codepool sınıf kopyalamak yerine dosyayı değiştirmek istiyorum (sadece bunu unutmak ve güncelleme sonra sorun alma neden olur)
Flyingmana

1.12.10 için güncelleme yapılacağına dair bir onayınız var mı? Evet ise katılıyorum.
Matthias Zeis

Hala 1.9.2.4 sürümünde bu güncellenmedi ..
Erfan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.