Adresse e-mail non valide "admin@eternal.florist"


13

Salut, j'ai acheté ce nouveau nom de domaine de fantaisie et maintenant je suis en difficulté. J'essayais de définir cela dans les adresses e-mail du magasin dans l'administrateur Magento. Et obtenu l'erreur ci-dessus. Que fais-je?

(J'ai également essayé de le changer dans la base de données. Mais je ne trouve pas la table qui le tient)

Réponses:


4

Exécutez l'instruction suivante:

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

Vous pouvez essentiellement y éditer les valeurs. Les principaux que vous voudrez examiner sont:

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

PS

Je ne reçois pas d'erreur lors de la validation de cette adresse e-mail dans 1.7.0.2, vous pouvez essayer une substitution locale du modèle suivant:

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

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

à

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

Cela contourne essentiellement le processus de validation.


21

Vous n'avez pas spécifié la version de Magento que vous utilisez, mais je suppose que c'est <CE 1.9.1.0 ou <EE 1.14.1.0. Dans ce cas, la solution consiste à mettre à niveau Magento vers CE 1.9.1.0 .

Magento utilise Zend Framework (ou plus spécifique: la classe Zend_Validate_Hostname) pour valider le domaine de premier niveau.

Dans CE 1.9.0.0 et la version EE correspondante, Magento a utilisé Zend Framework 1.12.3. Cette version ne prend pas en charge les nouveaux domaines de premier niveau. De ce fait, les validations en front-end et en back-end échouent.

Dans CE 1.9.1.0 et EE 1.14.1.0, Magento a mis à jour Zend Framework vers 1.12.7. Cette version implémente plusieurs nouveaux domaines de premier niveau, l'un d'eux étant .florist.

Cela dit, il existe également d' autres domaines de premier niveau actuellement non pris en charge dans la version actuelle de Magento . Dans Zend Framework 1.12.10 qui n'est pas encore inclus, il y a eu une autre mise à jour de la validation du nom d'hôte en ajoutant de nombreuses nouvelles adresses.

Vous pourriez:

  • copier lib/Zend/Validate/Hostname.phpversapp/code/local/Zend/Validate/Hostname.php
  • récupérez le fichier Zend_Validate_Hostname du 24/10/2014 (c'est trop long pour copier le fichier donc allez sur GitHub),
  • copiez la $_validTldsvariable de la version hébergée par GitHub dans votre Hostname.php et
  • remplacer

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

    avec

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

Cela permettra de nouveaux domaines de premier niveau, y compris ceux qui dépassent 10 caractères.


comme cela est résolu par une mise à jour, je changerais directement le fichier au lieu de copier la classe dans un pool de codes (ne fait que l'oublier et obtenir des problèmes après la mise à jour)
Flyingmana

Avez-vous une confirmation qu'il y aura une mise à jour vers 1.12.10? Si oui, je suis d'accord.
Matthias Zeis

Toujours en 1.9.2.4 cela n'a pas été mis à jour ..
Erfan
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.