PHP - Variável POST não recebe valor de textarea com CKEditor.

11/02/2020

0

Pessoal, preciso de uma ajuda pois já quebrei a cabeça e pesquisei em todos os lugares...

A minha página funciona perfeitamente com um textarea comum, mas, com o CKEditor não. Segundo a documentação do CKEditor, quando se utiliza o "CKEDITOR.replace", quando o formulário é enviado, todos os dados do CKEditor passam para o próprio textarea que ele deu replace.

Abaixo, um exemplo da minha página:

O botão envia as informações para uma function ''Load'', passando os dados por POST do formulário para a página ''addnotice'', exibindo o resultado na DIV de ''result''.

O Load:
function Load(url, div, tipo, campos) {
	var ajax = null;
	if(window.ActiveXObject)
		ajax = new ActiveXObject(''Microsoft.XMLHTTP'');
	else if(window.XMLHttpRequest)
		ajax = new XMLHttpRequest();
	if (ajax != null) {
		var cache = new Date().getTime();
		ajax.open(tipo, url + "&cache=" + cache , true);
		ajax.onreadystatechange = function status()	{
				if(ajax.readyState == 4) {					
					if(ajax.status == 200) {
						document.getElementById(div).innerHTML = ajax.responseText;
						var texto=unescape(ajax.responseText);
						extraiScript(texto);
					}
				}
				else if(ajax.readyState == 0)
					document.getElementById(div).innerHTML = ''<img src="images/load.gif">'';
		}
		if (tipo == "POST") {
			ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
			ajax.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
			ajax.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
			ajax.setRequestHeader("Pragma", "no-cache");
			ajax.send(campos); 
		}
	else {
		ajax.send(null);
	}
	}
}


O código HTML:

<form name="testeck" id="testeck" method="post">

	<textarea id="editor1" name="editor1"></textarea>

	<input type="button"  value="Adicionar" onclick="Load(''?send=addnotice'', ''result'', ''POST'', Form(''testeck''));" />
</form>

<div id="result"></div>

<script>
	CKEDITOR.replace(''editor1'');
</script>


<?php
$editor1 = $_POST[''editor1''];
?>


Como eu disse, o textarea comum passa normalmente o valor para a variável, mas o CKEditor, que deveria passar o valor para o textarea, não está fazendo isso.

Se alguém souber, ou pelo menos puder indicar uma direção, já vai ajudar muito!
Gustavo

Gustavo

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar