Ahoj,
nevim v čem je problém, na googlu jsem nenašel skoro nic. Když vyplním EAN13 a potvrdím, tak se mi ukáře error (pokud tam mám písmena) "pole ean13 je neplatné" Nevíte, v čem je problém ? Co mám nastavit v phpmyAdmin ? Aktuálně tam je VARCHAR.
Ahoj,
nevim v čem je problém, na googlu jsem nenašel skoro nic. Když vyplním EAN13 a potvrdím, tak se mi ukáře error (pokud tam mám písmena) "pole ean13 je neplatné" Nevíte, v čem je problém ? Co mám nastavit v phpmyAdmin ? Aktuálně tam je VARCHAR.
EAN13 sestává pouze z čísel, pokud do tohoto pole potřebuješ vložit i písmena, musela by se upravit funkční podmínka v jádru Presty, která kontroluje obsah pole před uložení do databáze.
Sobik : To jsem našel na googlu, někdo radil změnit v classes/product.php 'Ean13' => 'isEan13' ale to už je změnený. Nevíš, co by se muselo změnit ? (Pokud znáš prestu...)
Jinak dík za odpověď
isEan13 je funkce, která je uložena v souboru classes/Validate.php, zde jí také můžeš upravit. Pro tvé účely však v pohodě stačí vyřadit jí celou z funkčnosti právě v souboru, o kterém píšeš (classes/product.php). Nevím jakou úpravu jsi udělal, ale mělo by stačit jí zakomentářovat v proměnné $fieldsValidate.
PHP kód:protected $fieldsValidate = array(
...
...
...
'text_fields' => 'isUnsignedInt',
'active' => 'isBool'/*,
'ean13' => 'isEan13'*/
);
Sobik : To je přesně ta jediná věc, kterou jsem našel na netu. Problém je, že takto to tam už je
Nenapadá tě ještě něco ?Kód:protected $fieldsValidate = array( 'id_tax_rules_group' => 'isUnsignedId', 'id_manufacturer' => 'isUnsignedId', ....... !active' => 'isBool', 'available_for_order' => 'isBool', 'condition' => 'isGenericName', 'show_price' => 'isBool', 'ean13' => 'isEan13',
Problém je právě v tom, že to tam je. V obsahu té proměnné se předává informace, jaká pole mají být zkontrolována. Jak jsem naznačil výše, buď tento řádek zakomentářuj nebo rovnou odmaž ale protože je záznam jako poslední, zruš i tu čárku na konci řádku předchozího.
nejsem PHPkař, ale pokud to byla funkce, tak jeji volání by se nemělo zakomentovat, ale místo volání fuknce nastavit automaticky hodnotu na true.
Sobik: Promin, spatne jsem precetl nejdulezitejsi slovicko "vyradit" :) Ted uz to funguje, pouze je problem s EAN kody, ktere jsou delsi nez 13 pismen/cisel. Zkousel jsem nastavit Pole Ean13 v phpMyadmin na 20, ale nic se neděje..... Poslední rad ? Btw, máš u mě pivo.
Změnit v šabloně hodnotu maxlength u formuláře:
K čemu to vlastně děláš (na tohle je spíš pole Kód zboží)?Kód:<td class="col-left">EAN13 nebo JAN</td> <td style="padding-bottom:5px;"> <input size="55" maxlength="13" type="text" name="ean13" value="" style="width: 130px; margin-right: 5px;" /> <span class="small">(Evropa, Japonsko)</span> </td>
Kvůli export do XML. Mám na to udělanej script, kterej pracuje s EAN, ne s kodem zbozi.
.....
.....
.....
HEUREKA !! Jsem to ale debil. Stačí v tom scriptu nahradit ean13 za reference. Problem solved. Doháje...... Máte u mne všichni pivo a +body.