Foro de soporte WordPress en español


Soporte WordPress en español Soporte gratuito para webs alojadas en Webempresa.com
Habilitado para todos los clientes con planes de Hosting Alto Rendimiento a partir de 3GB y planes XL.

No ofrecemos soporte a webs alojadas en servidores externos o localhost, ni soporte css o programación.

Te recomendamos que leas esta información sobre nuestro sistema de soporte en el foro, te ayudará a sacar el máximo partido de nuestro conocimiento: Cómo podemos ayudarte.


Encuentra la solución a tu problema, buscando en nuestro foro:
Bienvenido, Invitado
Nombre de Usuario: Contraseña: Recordarme
Consultas relacionadas con la extensión BreezingForms para la creación de Formularios en Joomla.

TEMA: Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307193

Buenos días a todos,
Tengo terminado el desarrollo de un formulario BreezingForms desde Joomla, para que un cliente nos pueda enviar determinadas informaciones y ficheros.
Cuando realizamos las pruebas desde nuestros ordenadores todo funciona correctamente, pero cuando intenta enviar el cliente recibe el error de "Error en el Envío" y no recibimos los datos (esto lo tenemos programado en el formulario mediante un Javascript que, en caso de que el estado sea diferente a cero proporcione este error).
Revisando los ficheros de LOG vemos la siguiente línea:
[18-Apr-2018 18:44:31 Europe/Berlin] PHP Warning: escapeshellcmd() has been disabled for security reasons in /home2/qipertc2/public_html/codigolei/libraries/vendor/phpmailer/phpmailer/class.phpmailer.php on line 1444

He abierto un ticket por este problema y la respuesta es que Webempresa tiene deshabilitada, por motivos de seguridad, la función escapeshellcmd(), y que abra un post para ver si me pueden ayudar a configurar el componente de BreezingForms.

Agradezco cualquiera ayuda que puedan prestarme. Gracias.

URL del sitio: Contenido oculto para usuarios invitados. Por favor, inicie su sesión para poder verlo.
  • Jesus
  • Avatar de Jesus
  • DESCONECTADO
  • Navegador Iniciado
  • Mensajes: 8
  • Gracias recibidas 1
  • Karma: 1
El tema ha sido cerrado.
Mejora la velocidad de tu WordPress

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307199

Hola Jesus.

Si funciona en vuestros equipos tiene que funcionar en el del Usuario ¿ Desde donde se conecta ese usuario ? ¿ se conecta desde países de habla no hispana ? ¿ Le comentaste que probara desde otros navegadores ?

la función que comentas esta desestabilizada en todos nuestros servidores , como te comentan por seguridad.

Puedes probar lo siguiente:
.- accede a tu cuenta de cPanel -> Administrador de Archivos
.- Edita el archivo class.phpmailer.php que encontraras en la ruta libraries -> vendor -> phpmailer -> phpmailer -> class.phpmailer.php
.- Sobre la linea 1445 veras el siguiente código:
or !in_array(escapeshellarg($string), array("'$string'",

.- Modifica el código por lo siguiente:
or !in_array(@escapeshellarg($string), array("'$string'",

Como veras solo añadimos una @ a la variable escapeshellarg

Nota: recuerda realizar una copia del archivo antes de codificarlo.

Revisa si con eso se soluciona el tema del aviso.

Un saludo
  • Pepe
  • Avatar de Pepe
  • CONECTADO
  • Administrador
  • Mensajes: 20054
  • Gracias recibidas 1600
  • Karma: 587
Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar Testimonio
¡Gracias!.
El tema ha sido cerrado.
trasladar web gratis

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307268

Buenos días Pepe,

Hemos modificado el fichero php.ini tal como nos indicas y mi cliente ha vuelto a probar a realizar el envío, pero sigue con el mismo problema.
Una pregunta: si la función que falla es escapeshellcmd, ¿no habría que añadirle la @ a esta función en vez de a escapeshellarg?.
Por otra parte, ¿se puede deshabilitar esta función escapeshellcmd?.
Muchas gracias por tu ayuda.
  • Jesus
  • Avatar de Jesus
  • DESCONECTADO
  • Navegador Iniciado
  • Mensajes: 8
  • Gracias recibidas 1
  • Karma: 1
El tema ha sido cerrado.

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307280

Hola


Cómo tienes configurado Configuración Global > Servidor > Configuración de correo ?, envía una captura de pantalla. Tienes alguna extensión relacionado con envío de correos adicional?

Te lo comento porque si tienes configurado lo que viene por defecto con Joomla entonces no deberías tener problema.

En todo caso, busca esta función que se reporta y simplemente quitala, pero deja el string, si tienes dudas envía una captura de pantalla de la línea 1444

La función lo que hace es una comprobación si el parametro o parámetros enviados son correctos

Saludos.
Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar mi Testimonio
¡Gracias!.
El tema ha sido cerrado.

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307422

Buenos días Jhon,
La configuración de correo que hemos estado utilizando es la que trae Joomla por defecto (ahora mismo la he cambiado a SMTP para que mi cliente pueda probar hoy a enviar el formulario).
En cuanto al código del fichero class.phpmailer.php original, en la línea donde da el error, lo adjunto en una imagen y lo pego a continuación:
protected static function isShellSafe($string)
{
// Future-proof
if (escapeshellcmd($string) !== $string
or !in_array(escapeshellarg($string), array("'$string'", "\"$string\""))
) {
return false;
}
¿Para deshabilitar la función escapeshellcmd simplemente debería quitar la primera parte del if?.

Muchas gracias por la ayuda.
Un saludo.
Adjuntos:
  • Jesus
  • Avatar de Jesus
  • DESCONECTADO
  • Navegador Iniciado
  • Mensajes: 8
  • Gracias recibidas 1
  • Karma: 1
El tema ha sido cerrado.

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307425

Hola Jesus.

Tienes que eliminar toda la función. Si no quieres eliminar todo el bloque lo que puedes hacer es dejarlo como comentario con lo que no tendría ningún efecto:
// Future-proof
// if (escapeshellcmd($string) !== $string
// or !in_array(escapeshellarg($string), array("'$string'", "\"$string\""))
// ) {
// return false;
// }

Un Saludo
  • Pepe
  • Avatar de Pepe
  • CONECTADO
  • Administrador
  • Mensajes: 20054
  • Gracias recibidas 1600
  • Karma: 587
Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar Testimonio
¡Gracias!.
Última Edición: 1 año 7 meses antes por Pepe.
El tema ha sido cerrado.

¿Te ha resultado interesante esta entrada del foro?

Suscríbete para recibir consejos y trucos útiles para tu Web.

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307660

Buenas tardes a todos,
Lo primero darle las gracias a Pepe y a Jhon por su inestimable ayuda.
Por fin he podido aclarar el problema con mi cliente, haciendo el proceso paso a paso desde su ordenador, y he descubierto que el problema del no envío se debía a que intentaba adjuntar un documento Word docx, extensión que no estaba contemplada. En este caso no recibía el mensaje adecuado de extensión no permitida (usa el I.E. 11). He habilitado este tipo de archivos y todo ha funcionado correctamente.
De todas formas he dejado desactivado el complemento (que es lo que yo veía en el log como que daba problemas).

Un saludo.
  • Jesus
  • Avatar de Jesus
  • DESCONECTADO
  • Navegador Iniciado
  • Mensajes: 8
  • Gracias recibidas 1
  • Karma: 1
El tema ha sido cerrado.
Los siguientes usuarios han agradecido: Pepe

Configurar función escapeshellcmd() en phpmailer para recibir datos formulario BreezingForms 1 año 7 meses antes #307662

Hola jesus.

Genial !!! me alegra que lo solucionaras :cheer:

Muchas veces nos ofuscamos en algo y empezamos a dar vueltas y resulta que al final el problema esta en el lado del cliente, sobre todo cuando se trata de correos ;)

El Tema de las extensiones no permitidas se puede solucionar simplemente comprimiendo en archivo en un zip.

Gracias por informarnos y aportar la solución ;)

Cerramos el tema

un saludo
  • Pepe
  • Avatar de Pepe
  • CONECTADO
  • Administrador
  • Mensajes: 20054
  • Gracias recibidas 1600
  • Karma: 587
Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar Testimonio
¡Gracias!.
El tema ha sido cerrado.

Temas Relacionados

8 Respuestas emo
Categoría: BreezingForms
Tema iniciado 5 años 11 meses antes por Alceste
1076 Visitas
22 Respuestas emo
Categoría: BreezingForms
Tema iniciado 8 años 3 meses antes por WORLD NATURE
  • Página:
  • 1
  • 2
7809 Visitas
7 Respuestas emo
Categoría: Joomla 3.0
Tema iniciado 2 años 10 meses antes por Thomas
1119 Visitas
1 Respuestas emo
Categoría: BreezingForms
Tema iniciado 1 año 6 meses antes por Jesus
323 Visitas
4 Respuestas emo
Categoría: Joomla 2.5
Tema iniciado 6 años 7 meses antes por Antonio Fernández
1103 Visitas
1 Respuestas emo
Categoría: BreezingForms
Tema iniciado 8 años 6 meses antes por Jose
2875 Visitas
3 Respuestas emo
Categoría: BreezingForms
Tema iniciado 5 años 9 meses antes por Alceste
1445 Visitas
6 Respuestas emo
Categoría: BreezingForms
Tema iniciado 6 años 1 mes antes por Raúl Ramón Val
2224 Visitas
8 Respuestas emo
Categoría: VirtueMart 2.0
Tema iniciado 7 años 1 mes antes por Benjamin
2492 Visitas
2 Respuestas emo
Categoría: Pack Tienda Joomla
Tema iniciado 7 años 3 meses antes por Manuel
1913 Visitas

Tiempo de carga de la página: 0.484 segundos