[PHP] public static function isEan13

  • Creatore Discussione Creatore Discussione alex.g
  • Data di inizio Data di inizio
Stato
Chiusa ad ulteriori risposte.

alex.g

Nuovo Utente
15 Mag 2014
13
0
1
Ciao, una delle classi di Prestashop 1.7, presenti nel file validate.php è questa
PHP:
public static function isEan13($ean13)
{
return !$ean13 || preg_match('/^[0-9]{0,13}$/', $ean13);
}
Ho modificato questa classe per permettere l'inserimento nel campo EAN13 di caratteri dalla a alla z per esigenze che non sto a spiegare per non dilungarmi.
Questa è la classe modificata, ma continua a darmi errore di inserimento.
PHP:
public static function isEan13($ean13)
{
return !$ean13 || preg_match('/^[0-9a-z]{0,13}$/', $ean13);
}
Ho capito che probabilmente sto sbagliando qualcosa nella modifica della classe, ma non capisco cosa. Qualche aiuto?
 
Ultima modifica di un moderatore:
@alex.g
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code.gif
quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box inserisci 2.png.JPG

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 
Mi auto rispondo con la soluzione che ho trovato.



FILE: classes/Validate.php

public static function isEan13($ean13)
{
return !$ean13 || preg_match('/^[0-9]{0,13}$/', $ean13);
}

MODIFICA IN

public static function isEan13($ean13)
{
return !$ean13 || preg_match('/^[a-zA-Z0-9]{0,13}$/', $ean13);
}

//////////////////////////////////////////////////////////////////////


FILE: src\PrestaShopBundle\Form\Admin\Product/ProductOptions.php

->add('ean13', FormType\TextType::class, [
'required' => false,
'error_bubbling' => true,
'label' => $this->translator->trans('EAN-13 or JAN barcode', [], 'Admin.Catalog.Feature'),
'constraints' => [
new Assert\Regex('/^[0-9]{0,13}$/'),
],
'empty_data' => '',
])

MODIFICA IN

->add('ean13', FormType\TextType::class, [
'required' => false,
'error_bubbling' => true,
'label' => $this->translator->trans('EAN-13 or JAN barcode', [], 'Admin.Catalog.Feature'),
'constraints' => [
new Assert\Regex('/^[a-zA-Z0-9]{0,13}$/'),
],
'empty_data' => '',
])

In questo modo si potranno inserire nel campo EAN13, 13 caratteri tipo alfanumerici.
 
Come devo dirti che devi usare i tag per inserire codice?
La prossima chiudo subito!
Leggi con attenzione il regolamento del forum e quello di sezione dove apri le discussioni!!
 
Stato
Chiusa ad ulteriori risposte.

Discussioni simili