Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera,
estou tento problemas com os seguintes itens: TinyMCE + PHP + INSERT + UTF-8 =
Caracters(Ex): (digitado no form) até (inserido no bd) até
Estou cansado de tanto procurar soluções na net e realizar tentativas.
Vamos ao cód:
1º) CONFIGURAÇÕES DO BD:
DataType = text
charset = utf8
Collation = utf8_general_ci
2º) FORMULÁRIO (index.php):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
<title>TESTE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="_js/tinymce-textarea/jscripts/tiny_mce/tiny_mce.js"></script>
</head>
<body>
<script type="text/javascript" charset="ISO-8859-1">
//<![CDATA[
tinyMCE.init({
/* General options */
language : "pt",
mode : "textareas",
theme : "advanced",
plugins : "autolink,lists,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave,visualblocks",
/* Theme options */
theme_advanced_buttons1 : "newdocument,|,bold,italic,underline,strikethrough,forecolor,backcolor,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,|,insertdate,inserttime,preview,|,print,|,emotions,iespell,media",
/*theme_advanced_buttons3 : "save,tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",*/
/*theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft,visualblocks",*/
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
/* Example content CSS (should be your site CSS) */
content_css : "_js/tinymce-textarea/examples/css/content.css",
/* Style formats */
style_formats : [
{title : 'Bold text', inline : 'b'},
{title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
{title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
{title : 'Example 1', inline : 'span', classes : 'example1'},
{title : 'Example 2', inline : 'span', classes : 'example2'},
{title : 'Table styles'},
{title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
],
/* Replace values for the template plugin */
template_replace_values : {
username : "second",
staffid : "991234"
}
});
//]]>
</script>
<?php
if(isset($_GET['cadastra']) && $_GET['cadastra'] == 'true'){
$textarea = $_POST['textarea'];
if($textarea == ""){
print"
<div class=\"msg_erro\">
<ul><li>Digite um texto por favor.</li></ul>
</div><br />
";
}else{
$AllAdmin->addTeste($_POST);
print"
<div class=\"msg_confirm\">
<ul><li>Texto inserido com sucesso.</li></ul>
</div><br />
";
}
}
?>
<form id="cadastra_email" action="reload.php?load=ajuda&cadastra=true" method="post" enctype="multipart/form-data">
<p>Teste até:</p>
<textarea name="textarea" id="textarea"></textarea>
<p>
<input type="submit" value="Cadastrar" />
</p>
</form>
</body>
3º)CLASS QUE FAZ A INSERÇÃO NO BD:
public final function addTeste($VARS) {
/*$VARS = Tools::trataUtf8Form($VARS);*/
/*$VARS["textarea"] = utf8_decode($VARS["textarea"]);*/
/*$responde = utf8_decode($responde);*/
if ($this->sql->insertSQL($VARS, $this->tblTeste)) {
return true;
} else {
return false;
}
}
OBS: As partes comentadas foram as formas que tentei p/ corrigir o problema.
Na verdade eu utilizo jQuery p/ passar as variáveis, aí pensei que o problema era este. Então decidi tentar fazer tdo via PHP e o problema continuou.
HELP :huh:
=========================================================
Galera, descobri o problema. Agora só falta eu conseguir a solução hehehe :rolleyes:
Seguinte...
Acontece que o TinyMCE não utiliza o formato UTF-8. Desta forma, por isto não estava decodificando com o utf8_decode.
Agora o problema é descobrir qual formato de codificação o TinyMCE utiliza? :wacko:
Carregando comentários...