Tengo una pregunta como en el título: ¿Por qué la clase de carrito de compras codeigniter no permite ningún carácter especial en el nombre? Cuando estoy agregando un elemento con un nombre normal que solo contiene caracteres estándar, funciona como un amuleto. Sin embargo, si agrego algo como, por ejemplo, "palabra/palabra" o algo así, no agregará nada al carrito de compras. ¿Alguien puede darme algunos consejos sobre eso, por favor?¿Por qué la clase de carrito de compras codeigniter no permite ningún carácter especial en el nombre?
Respuesta
Si mira en Cart.php, verá en la línea 31 var $product_name_rules = '\.\:\-_ a-z0-9';
.
Una buena manera de cambiar esta variable es poner un MY_Cart.php en sus bibliotecas de aplicaciones \ \ MY_Cart.php con este código:
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class MY_Cart extends CI_Cart {
var $product_name_rules = '[:print:]';
}
o también puedes modificarlo cuando se agrega el producto, utilizando :
$this->cart->product_name_rules = '[:print:]';
$this->cart->insert(array());
puede también opcionalmente basta con modificar la expresión regular para permitir que las cotizaciones de este modo:
$this->cart->product_name_rules = "\.\:\-_\"\' a-z0-9";
Acabo de encontrar esta pregunta de google mientras me enfrento al mismo problema, pero la respuesta proporcionada por ipalaus no solucionó mi problema, porque aún no permite caracteres griegos. Después de un poco más de excavación encontré esto:
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class MY_Cart extends CI_Cart {
var $product_name_rules = '\d\D';
}
que básicamente permite que todo . ¡Disfrutar!
Todo esto no ayuda en UTF8 Caracteres ( etc Serbia), pero he hecho algo como, antes de poner en uso cuadro como el
$name=ucfirst(url_title(convert_accented_characters($name), ' ', TRUE));
y modificado ./application/config /foreign_chars.php
$foreign_characters = array(
'/ä|æ|ǽ/' => 'ae',
'/ö|œ/' => 'oe',
'/ü/' => 'ue',
'/Ä/' => 'Ae',
'/Ü/' => 'Ue',
'/Ö/' => 'Oe',
'/À|Á|Â|Ã|Ä|Å|Ǻ|Ā|Ă|Ą|Ǎ/' => 'A',
'/à|á|â|ã|å|ǻ|ā|ă|ą|ǎ|ª/' => 'a',
'/Ç|Ć|Ĉ|Ċ|Č/' => 'C',
'/ç|ć|ĉ|ċ|č/' => 'c',
'/Ð|Ď|Đ/' => 'D',
'/ð|ď|đ/' => 'd',
'/È|É|Ê|Ë|Ē|Ĕ|Ė|Ę|Ě/' => 'E',
'/è|é|ê|ë|ē|ĕ|ė|ę|ě/' => 'e',
'/Ĝ|Ğ|Ġ|Ģ/' => 'G',
'/ĝ|ğ|ġ|ģ/' => 'g',
'/Ĥ|Ħ/' => 'H',
'/ĥ|ħ/' => 'h',
'/Ì|Í|Î|Ï|Ĩ|Ī|Ĭ|Ǐ|Į|İ/' => 'I',
'/ì|í|î|ï|ĩ|ī|ĭ|ǐ|į|ı/' => 'i',
'/Ĵ/' => 'J',
'/ĵ/' => 'j',
'/Ķ/' => 'K',
'/ķ/' => 'k',
'/Ĺ|Ļ|Ľ|Ŀ|Ł/' => 'L',
'/ĺ|ļ|ľ|ŀ|ł/' => 'l',
'/Ñ|Ń|Ņ|Ň/' => 'N',
'/ñ|ń|ņ|ň|ʼn/' => 'n',
'/Ò|Ó|Ô|Õ|Ō|Ŏ|Ǒ|Ő|Ơ|Ø|Ǿ/' => 'O',
'/ò|ó|ô|õ|ō|ŏ|ǒ|ő|ơ|ø|ǿ|º/' => 'o',
'/Ŕ|Ŗ|Ř/' => 'R',
'/ŕ|ŗ|ř/' => 'r',
'/Ś|Ŝ|Ş|Š/' => 'S',
'/ś|ŝ|ş|š|ſ/' => 's',
'/Ţ|Ť|Ŧ/' => 'T',
'/ţ|ť|ŧ/' => 't',
'/Ù|Ú|Û|Ũ|Ū|Ŭ|Ů|Ű|Ų|Ư|Ǔ|Ǖ|Ǘ|Ǚ|Ǜ/' => 'U',
'/ù|ú|û|ũ|ū|ŭ|ů|ű|ų|ư|ǔ|ǖ|ǘ|ǚ|ǜ/' => 'u',
'/Ý|Ÿ|Ŷ/' => 'Y',
'/ý|ÿ|ŷ/' => 'y',
'/Ŵ/' => 'W',
'/ŵ/' => 'w',
'/Ź|Ż|Ž/' => 'Z',
'/ź|ż|ž/' => 'z',
'/Æ|Ǽ/' => 'AE',
'/ß/'=> 'ss',
'/IJ/' => 'IJ',
'/ij/' => 'ij',
'/Œ/' => 'OE',
'/š/' => 's',
'/đ/' => 'd',
'/č/' => 'c',
'/ć/' => 'c',
'/ž/' => 'z',
'/Š/' => 'S',
'/Đ/' => 'D',
'/Č/' => 'C',
'/Ć/' => 'C',
'/Ž/' => 'Z',
'/ƒ/' => 'f'
);
- 1. carrito de compras para usuarios no registrados
- 2. ¿Cómo implementar el carrito de compras ASP.NET?
- 3. Carrito de compras amistoso de Symfony
- 4. fuente abierta PHP carrito de compras ¿BIBLIOTECA?
- 5. Haga un precio mínimo en el carrito de compras Magento
- 6. ¿Cuál es el mejor carrito de compras disponible en Java?
- 7. ¿Por qué se permite la cadena de caracteres y el compilador no permite int int?
- 8. Ember.js + HTML5 arrastrar y soltar el carrito de compras demo
- 9. Insertar carácter especial usando: antes de pseudo clase en css
- 10. Obtenga los detalles del carrito de compras en Magento
- 11. CodeIgniter no crear ningún archivo de registro
- 12. ¿Cómo obtener los contenidos del carrito de compras de Amazon?
- 13. Carrito de compra Precio Regla que excluye productos en especial
- 14. Artículos del carrito de compras que no se muestran en la vista del cliente
- 15. ¿Por qué C no termina cadenas con un carácter especial de terminación de cadena escapada?
- 16. ¿Por qué Codeigniter no registra el error?
- 17. RESTful Actualizaciones múltiples (Ejemplo: ¿Borrar un carrito de compras)?
- 18. nombre de tipo no permite la clase de almacenamiento para ser especificado
- 19. Carácter especial en database.yml para la contraseña
- 20. carácter especial wpf
- 21. NoClassDefFoundError sin ningún nombre de clase
- 22. Contando el carácter especial UTF-8
- 23. ¿Por qué C# no me permite usar el mismo nombre de variable en diferentes ámbitos?
- 24. Validar texto con carácter especial
- 25. La mejor manera de implementar un carrito de compras usando PHP/MySQL
- 26. ¿Cómo seleccionar una columna en SQL Server con un carácter especial en el nombre de columna?
- 27. Permitir cualquier carácter en la URL en CodeIgniter
- 28. ¿Qué significa "restablecer compras" en compras en la aplicación?
- 29. ¿Qué es una buena joya de carrito de compras para Rails?
- 30. ¿Agregar carácter especial a la expresión regular?
¡Esto funciona! Thx mate! – Pavel
Consejo muy útil. Creo que deberían arreglar esto. – Kamil
Literalmente salvó el día. – David