dregalo Posted April 7, 2016 Share Posted April 7, 2016 Buenos días, Estoy teniendo un error en mi tienda y es que al entrar en "ver mi tienda" me aparece en la cabecera una línea de warning de error repetidas por lo menos 30 veces. En concreto pone esto: Warning: preg_replace(): Compilation failed: invalid range in character class at offset 24 in /var/www/vhosts/dregalo.es/httpdocs/classes/Tools.php on line 982 Luego ya, debajo, se ve la tienda sin problemas pero claro la primera imagen es este warning repetido muchas veces. Por favor, alguien me puede ayudar en cómo quitar estas líneas??. Solo aparecen en la tienda no en el plesk. Adjunto un pantallazo para que veaís.. Gracias Link to comment Share on other sites More sharing options...
joseantgv Posted April 7, 2016 Share Posted April 7, 2016 (edited) Buenos días, Estoy teniendo un error en mi tienda y es que al entrar en "ver mi tienda" me aparece en la cabecera una línea de warning de error repetidas por lo menos 30 veces. En concreto pone esto: Warning: preg_replace(): Compilation failed: invalid range in character class at offset 24 in /var/www/vhosts/dregalo.es/httpdocs/classes/Tools.php on line 982 Luego ya, debajo, se ve la tienda sin problemas pero claro la primera imagen es este warning repetido muchas veces. Por favor, alguien me puede ayudar en cómo quitar estas líneas??. Solo aparecen en la tienda no en el plesk. Adjunto un pantallazo para que veaís.. Gracias Ocultar esas líneas lo puedes hacer con esto: https://www.prestashop.com/forums/topic/224525-how-to-turn-on-error-reporting-for-debug-information-blank-page-500-internal-server-error/ En vez de TRUE, que es como lo tendrás, tienes que dejarlo en FALSE. Para solucionarlo habría que añadir una traza en esa línea para ver quién está provocando el error, utilizando la función debug_backtrace() por ejemplo. Edited April 7, 2016 by joseantgv (see edit history) 1 Link to comment Share on other sites More sharing options...
dregalo Posted April 7, 2016 Author Share Posted April 7, 2016 Gracias, también había encontrado esto que me puede ayudar para arregarlo. Lo acabo de encontrar... Creo que se trata de localizar el error y editarlo correctamente. 0 0 Un error en el código de Prestashop puede hacer que tu página se venga literalmente abajo. Los errores de código se reflejan en el fichero error_log, y la saturación de éste, puede agotar el espacio de tu cuenta, con la consiguiente caída del servicio. Eso es lo que me ha ocurrido con un error que se producía continuamente en el fichero error_log. El error exactamente era: PHP Warning: preg_replace(): Compilation failed: invalid range in character class at offset 24 in /…/classes/Tools.php on line 980 El número de línea puede ser aproximado, dependiendo de la versión de Prestashop que tengas. En mi caso, tengo la versión 1.4.2.5. En cualquier caso, la línea hace referencia al fichero Tools.php, concretamente a las líneas señaladas en rojo (que son las que contienen el error. Hay que editarlas de modo que queden como las líneas en verde. Es decir, añadir un ‘/’ tras un corchete ‘]’. Marco en azul los elementos que se han añadido. – $str = preg_replace(‘/[^a-zA-Z0-9\s\’\:\/\[\]–\pL]/u’, ‘‘, $str); + $str = preg_replace(‘/[^a-zA-Z0-9\s\’\:\/\[\]\-\pL]/u’, ‘‘, $str); – $str = preg_replace(‘/[^a-zA-Z0-9\s\’\:\/\[\]-]/’,‘‘, $str); + $str = preg_replace(‘/[^a-zA-Z0-9\s\’\:\/\[\]\–]/’,‘‘, $str); Por tanto, el resultado final de la edición ha de ser como esto: $str = preg_replace(‘/[^a-zA-Z0-9\s\’\:\/\[\]\-\pL]/u’, ”, $str);$str = preg_replace(‘/[\s\’\:\/\[\]\-]+/’, ‘ ‘, $str); Con ello, he logrado tener un fichero error_log de 10 gb (si, es impresionante). Fuente del artículo sobre el error Error Prestashop Compilation failed invalid range in character class at offset classes/Tools.php on line 980 localizado en: https://github.com/PrestaShop/PrestaShop/commit/4c6ca7cf12fb73818544e61a05d87ce9fd83919c 1 Link to comment Share on other sites More sharing options...
dregalo Posted April 7, 2016 Author Share Posted April 7, 2016 Muchas gracias joseantgv Ya he conseguido arreglarlo. Al final como no soy una experta en este mundillo, (vamos, no tengo ni idea) he preferido dejarlo en true para que si tengo algún fallo me lo diga y lo pueda corregir investigando... Se trataba de poner una barrita en un sitio, se lo he puesto y solucionado!!! Gracias por tu pronta ayuda. 1 Link to comment Share on other sites More sharing options...
joseantgv Posted April 7, 2016 Share Posted April 7, 2016 Muchas gracias joseantgv Ya he conseguido arreglarlo. Al final como no soy una experta en este mundillo, (vamos, no tengo ni idea) he preferido dejarlo en true para que si tengo algún fallo me lo diga y lo pueda corregir investigando... Se trataba de poner una barrita en un sitio, se lo he puesto y solucionado!!! Gracias por tu pronta ayuda. Pues sí, mejor todavía! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now