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

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar