Bueno como dice el título, tengo un formulario con algunos campos para ingresar y un textarea para escribir un detalle (con botones para edición del texto en html).
Mi problema está en el textarea, todos los demás campos funcionan perfectamente. A la hora de hacer el insert cuando el codigo que se genera no ocupa más de 340 caracteres (aproximadamente) se carga perfectamente sin problemas en la base de datos. A diferencia de lo anterior cuando el código generado es extenso el navegador me devuelve lo siguiente:
Junto con este error también me aparece el siguiente error del apache cuando vuelvo para atrás en el navegador:
Esta es una porción del código que utilizo para obtener los datos del textarea:
Código PHP:
$request = $this->getRequest();
$detalle = $request->getParam('detalle');
Zend_Debug::dump($detalle)
La última línea es para asegurarme de que esté obteniendo bien los datos, y efectivamente los toma correctamente.
Y la función que utilizo para hacer el insert es:
Código PHP:
public function insertData($campos, $table, $values, &$error ) {
$result = true;
$sql = "Insert into ";
$sql .= $table;
$sql .= "( " . $campos . " )";
$sql .= " values ";
$sql .= "( " . $values . " );";
$db = Zend_Db_Table_Abstract::getDefaultAdapter();
$db->getConnection();
$db->beginTransaction();
try {
$db->query($sql);
$db->commit();
} catch (Exception $e) {
$error = $e->getMessage();
$result = false;
$db->rollBack();
}
$result = intval($result);
$db->closeConnection();
return intval($result);
}
Haciendo el insert manualmente utilizando lo que contiene la variable $sql antes de iniciar la transacción funciona todo perfectamente. Es decir abriendo el MySQL Query Browser y copiando el código que me genera el programa. Por lo cual no creo que sea problema del MySQL.
También probé utilizando distintos navegadores pero con todos me pasa lo mismo.
Leí que podía ser el WAF pero no tengo idea de cómo evitarlo.
Utilizo:- PHP 5.3
- Zend Framework
- MySQL 5.1.36
- Apache 2.2.11
Espero que alguien me pueda ayudar a resolver el problema.
Desde ya muchas gracias.