Jump to content
Fórum Script Brasil
  • 0

Ajuda Caracteres no php


ewerton assunção

Question

Ola galera segue o link quero criar um gerenciador de noticias http://www.alinenetzel.com/grey.html

td funciona td certo mas olhem as noticas é só la que os caracteres não estão sendo reconhecidos , se eu for no mysql e mudar por la as noticias fica com acento mas quando escrevo pelo PHPnews que é o formulario n esta dando certo ele envia sem acentos

se alguém puder ajudar obrigado

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

então quando você usa o formulário para inserir a notícia la no mysql mesmo aparece o texto todo errado, mas quando você escreve direto no banco as notícias ficam corretas?

então o problema é na hora de salvar, ai o negócio é na hora que o PHPnews salva o texto no banco tente:

utf8_decode("$texto");
/*Isso já acho que resolva e escreva os acentos no banco de dados

se não resolver tente*/
htmlspecialchars(utf8_decode("$texto"), ENT_QUOTES, "ISO-8859-15");
/*para transformar os caracteres especiais em codificação HTML*/

Espero ter ajudado

Abrass

Link to comment
Share on other sites

  • 0

Onde coloco esse codigo??? já to até perdido aki de tanta coisa que já tentei hehehe

no index.php no config ???

obrigado e desculpa a ignorancia .

então quando você usa o formulário para inserir a notícia la no mysql mesmo aparece o texto todo errado, mas quando você escreve direto no banco as notícias ficam corretas?

então o problema é na hora de salvar, ai o negócio é na hora que o PHPnews salva o texto no banco tente:

utf8_decode("$texto");
/*Isso já acho que resolva e escreva os acentos no banco de dados

se não resolver tente*/
htmlspecialchars(utf8_decode("$texto"), ENT_QUOTES, "ISO-8859-15");
/*para transformar os caracteres especiais em codificação HTML*/

Espero ter ajudado

Abrass

Link to comment
Share on other sites

  • 0

olha o parâmetro action do formulário que você utiliza para inserir a noticia, olha o código desse arquivo e acha a variável que armazena o texto que foi digitado digamos que seja $texto, achando essa variável você escreverá assim:

$texto = utf8_decode("$texto");

essa linha tem que ser digitada antes que o PHPnews insira a notícia no banco de dados se ainda sim a notícia apresentar erros tenta:

$texto = htmlspecialchars(utf8_decode("$texto"), ENT_QUOTES, "ISO-8859-15");

Abrass

Link to comment
Share on other sites

  • 0

tentei de td não deu certo

posso passar o cod pra você dar uma olhada???

<?php

include "class.php";

include "pagina-segura.php";

$data = date ("d/m/Y",time());

$hora = strftime ("%H:%M");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>PHPnews: Nova Notícia</title>

</head>

<link rel="stylesheet" href="estilo.css" type="text/css" />

<body>

<div id="login">

<div id="formulario">

<form action="<? $PHP_SELF ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">

<div id="esquerdo">

<h1>

<br />

<br />

<br />

<div class="buttonscontainer">

<div class="buttons">

<a href="index.php">Nova notícia</a>

<a href="noticias.php">Editar notícias</a>

<a href="configuracoes.php">Configurações</a>

<a href="sair.php">Sair</a>

</div>

</div>

</h1>

</div>

<div id="direito">

<h1>Nova Notícia</h1>

<h2>

Título:<br />

<input name="titulo" type="text" size="39" /><p />

Descricao:<br />

<input name="descricao" type="text" size="39" /><p />

Imagem:<br />

<input name="foto" type="file" size="14" /><p />

Notícia:<br />

<textarea name="noticia" cols="25" rows="5"></textarea><p />

<input type="hidden" name="data" value="<?php echo $data ?>">

<input type="hidden" name="hora" value="<?php echo $hora ?>">

<input id="enviar" name="enviar" value="Publicar" type="submit"> <?

if(isset($_POST["enviar"])) {

$titulo = $_POST["titulo"];

$descricao = $_POST["descricao"];

$noticia = $_POST["noticia"];

$data = $_POST["data"];

$hora = $_POST["hora"];

$foto = $_FILES['foto']['name'];

$foto_tmp = $_FILES['foto']['tmp_name'];

$path = "conteudo/uploads/";

$caminho = "../conteudo/uploads/";

$arquivo = $foto;

$path_foto = $path.$arquivo;

/* move o arquivo pra pasta imagens */

move_uploaded_file($foto_tmp,$caminho.$foto);

/* insere no banco de dados */

$sql = mysql_query("INSERT INTO noticias (id, titulo, descricao, noticia, foto, data, hora) VALUES('','$titulo','$descricao','$noticia', '$path_foto','$data','$hora')");

if($sql){

echo "Notícia publicada!";

}else{

echo "<h2><font color='#FF0000'>Erro</font>

</h2>

Houve um erro:<br />

<blockquote>".mysql_error()."</blockquote>";

}

}

?>

</h2>

</div>

</form>

</div>

</div>

</body>

</html>

valeww obrigado

olha o parâmetro action do formulário que você utiliza para inserir a noticia, olha o código desse arquivo e acha a variável que armazena o texto que foi digitado digamos que seja $texto, achando essa variável você escreverá assim:

$texto = utf8_decode("$texto");

essa linha tem que ser digitada antes que o PHPnews insira a notícia no banco de dados se ainda sim a notícia apresentar erros tenta:

$texto = htmlspecialchars(utf8_decode("$texto"), ENT_QUOTES, "ISO-8859-15");

Abrass

Link to comment
Share on other sites

  • 0

Tenta assim:

<?php 

include "class.php";
include "pagina-segura.php";

$data = date ("d/m/Y",time());
$hora = strftime ("%H:%M");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>PHPnews: Nova Notícia</title>
</head>
<link rel="stylesheet" href="estilo.css" type="text/css" />

<body>

<div id="login">
<div id="formulario">
<form action="<? $PHP_SELF ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
<div id="esquerdo">
<h1>
<br />
<br />
<br />
<div class="buttonscontainer">
<div class="buttons">
<a href="index.php">Nova notícia</a>
<a href="noticias.php">Editar notícias</a>
<a href="configuracoes.php">Configurações</a>
<a href="sair.php">Sair</a>
</div>
</div>
</h1>
</div>
<div id="direito">
<h1>Nova Notícia</h1>
<h2>
Título:<br />
<input name="titulo" type="text" size="39" /><p />
Descricao:<br />
<input name="descricao" type="text" size="39" /><p />
Imagem:<br />
<input name="foto" type="file" size="14" /><p />
Notícia:<br />
<textarea name="noticia" cols="25" rows="5"></textarea><p />
<input type="hidden" name="data" value="<?php echo $data ?>">
<input type="hidden" name="hora" value="<?php echo $hora ?>">
<input id="enviar" name="enviar" value="Publicar" type="submit"> <?
if(isset($_POST["enviar"])) {

$titulo = utf8_decode($_POST["titulo"]);
$descricao = utf8_decode($_POST["descricao"]);;
$noticia = utf8_decode($_POST["noticia"]);
$data = $_POST["data"];
$hora = $_POST["hora"];
$foto = $_FILES['foto']['name'];
$foto_tmp = $_FILES['foto']['tmp_name'];

$path = "conteudo/uploads/";
$caminho = "../conteudo/uploads/";
$arquivo = $foto;
$path_foto = $path.$arquivo;

/* move o arquivo pra pasta imagens */
move_uploaded_file($foto_tmp,$caminho.$foto);

/* insere no banco de dados */
$sql = mysql_query("INSERT INTO noticias (id, titulo, descricao, noticia, foto, data, hora) VALUES('','$titulo','$descricao','$noticia', '$path_foto','$data','$hora')");
if($sql){
echo "Notícia publicada!";
}else{
echo "<h2><font color='#FF0000'>Erro</font>
</h2>
Houve um erro:<br />
<blockquote>".mysql_error()."</blockquote>";
}
}
?>
</h2>
</div>
</form>
</div>
</div>
</body>
</html>
Se ainda der erro tenta assim:
<?php 

include "class.php";
include "pagina-segura.php";

$data = date ("d/m/Y",time());
$hora = strftime ("%H:%M");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>PHPnews: Nova Notícia</title>
</head>
<link rel="stylesheet" href="estilo.css" type="text/css" />

<body>

<div id="login">
<div id="formulario">
<form action="<? $PHP_SELF ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
<div id="esquerdo">
<h1>
<br />
<br />
<br />
<div class="buttonscontainer">
<div class="buttons">
<a href="index.php">Nova notícia</a>
<a href="noticias.php">Editar notícias</a>
<a href="configuracoes.php">Configurações</a>
<a href="sair.php">Sair</a>
</div>
</div>
</h1>
</div>
<div id="direito">
<h1>Nova Notícia</h1>
<h2>
Título:<br />
<input name="titulo" type="text" size="39" /><p />
Descricao:<br />
<input name="descricao" type="text" size="39" /><p />
Imagem:<br />
<input name="foto" type="file" size="14" /><p />
Notícia:<br />
<textarea name="noticia" cols="25" rows="5"></textarea><p />
<input type="hidden" name="data" value="<?php echo $data ?>">
<input type="hidden" name="hora" value="<?php echo $hora ?>">
<input id="enviar" name="enviar" value="Publicar" type="submit"> <?
if(isset($_POST["enviar"])) {

$titulo = htmlspecialchars(utf8_decode($_POST["titulo"]), ENT_QUOTES, "ISO-8859-15");
$descricao = htmlspecialchars(utf8_decode($_POST["descricao"]), ENT_QUOTES, "ISO-8859-15");
$noticia = htmlspecialchars(utf8_decode($_POST["noticia"]), ENT_QUOTES, "ISO-8859-15");
$data = $_POST["data"];
$hora = $_POST["hora"];
$foto = $_FILES['foto']['name'];
$foto_tmp = $_FILES['foto']['tmp_name'];

$path = "conteudo/uploads/";
$caminho = "../conteudo/uploads/";
$arquivo = $foto;
$path_foto = $path.$arquivo;

/* move o arquivo pra pasta imagens */
move_uploaded_file($foto_tmp,$caminho.$foto);

/* insere no banco de dados */
$sql = mysql_query("INSERT INTO noticias (id, titulo, descricao, noticia, foto, data, hora) VALUES('','$titulo','$descricao','$noticia', '$path_foto','$data','$hora')");
if($sql){
echo "Notícia publicada!";
}else{
echo "<h2><font color='#FF0000'>Erro</font>
</h2>
Houve um erro:<br />
<blockquote>".mysql_error()."</blockquote>";
}
}
?>
</h2>
</div>
</form>
</div>
</div>
</body>
</html>
o que eu fiz foi trocar essas linhas
$titulo = $_POST["titulo"];
$descricao = $_POST["descricao"];
$noticia = $_POST["noticia"];
$data = $_POST["data"];
$hora = $_POST["hora"];
$foto = $_FILES['foto']['name'];
$foto_tmp = $_FILES['foto']['tmp_name'];
primeiro por essas:
$titulo = utf8_decode($_POST["titulo"]);
$descricao = utf8_decode($_POST["descricao"]);;
$noticia = utf8_decode($_POST["noticia"]);
$data = $_POST["data"];
$hora = $_POST["hora"];
$foto = $_FILES['foto']['name'];
$foto_tmp = $_FILES['foto']['tmp_name'];
e depois por essas:
$titulo = htmlspecialchars(utf8_decode($_POST["titulo"]), ENT_QUOTES, "ISO-8859-15");
$descricao = htmlspecialchars(utf8_decode($_POST["descricao"]), ENT_QUOTES, "ISO-8859-15");
$noticia = htmlspecialchars(utf8_decode($_POST["noticia"]), ENT_QUOTES, "ISO-8859-15");
$data = $_POST["data"];
$hora = $_POST["hora"];
$foto = $_FILES['foto']['name'];
$foto_tmp = $_FILES['foto']['tmp_name'];

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...