Olá, galera.
Bom, eu estou com um probleminha (até meio bobo), que não consigo resolver, pois não acho onde é o erro, e ele é o seguinte: Eu estou criando um sistema de noticias, e então a parte do conteúdo da matéria, ou seja, onde fica o texto, está estilizado com um editor de texto HTML o TyneMCE, e tem 3 scripts: noticias.php (mostra as noticias), noticia.php (mostra a noticia pelo id) e adicionar-noticia.php (onde faz a inclusão dos dados)
Então, por exemplo, se tento adicionar uma imagem com código htm: <img src="cdigo imagem.png">, ele mostra assim, <img src=/"codigodaimagem.png/"/> ou qualquer outro código html que envolva hiperlinks, como na classe href, ele mostra com aspas e barras a mais, além de aparecer uns /r/n/ no meio da noticia. Então eu queria saber onde está o erro para corrigi-lo, abaixo estão os três códigos:
adcionar-noticia.php
<title>Adicionar Noticia</title>
<script language="javascript" type="text/javascript" src="javascript.js"></script>
<SCRIPT src="javascript/jscripts.js"></SCRIPT>
<script type="text/javascript">
_editor_url = "htmlarea/";
_editor_lang = "en";
</script>
<script type="text/javascript" src="editor/tiny_mce.js"></script>
<script type="text/javascript" src="editor/tiny_mce_popup.js"></script>
<script type="text/javascript" src="editor/tiny_mce_src.js"></script>
<script type="text/javascript">
tinymce.init({
selector: "textarea"
});
</script>
<?php
include('config.php');
if (!empty($_POST) AND (empty($_POST['titulo']) OR empty($_POST['categoria']) OR empty($_POST['autor']) OR empty($_POST['texto']) OR empty($_POST['tags']) OR empty($_POST['imagens']))) {
echo "<font color=\"#ff0000\">Por Favor Preencha os campos Vazios</font>";
} else {
$titulo = $_POST["titulo"];
$categoria = $_POST["categoria"];
$autor = $_POST["autor"];
$texto = $_POST["texto"];
$tags = $_POST["tags"];
$imagens = $_POST["imagens"];
if($titulo == "" && $categoria == "" && $autor == "" && $texto == "" && $tags == ""){} else {
// Adiciona a Noticia ao banco de dados
$news_add = "INSERT INTO news (titulo, categoria, autor, date, views, autor_ip, texto, tags, imagens) VALUES ('".addslashes(mysql_real_escape_string($_POST["titulo"]))."', '".addslashes(mysql_real_escape_string($_POST['categoria']))."', '".addslashes(mysql_real_escape_string($_POST['autor']))."', NOW(), '0', '".addslashes(mysql_real_escape_string($_SERVER['REMOTE_ADDR']))."', '".addslashes(mysql_real_escape_string($_POST['texto']))."', '".addslashes(mysql_real_escape_string($_POST['tags']))."', '".addslashes(mysql_real_escape_string($_POST['imagens']))."')";
$news_add = mysql_query($news_add)
or die ("Erro ao Adicionar Noticia.");
echo "Noticia Adicionado com sucesso <a href='noticias.php'>Ver Noticias</a>";
}
}
?>
<h3>Adicionar Noticia:</h3>
<font color="#ff0000"><p>Campos marcados com (*) são obrigatórios</p></font>
<form name="input" action="adicionar-noticia.php" method="post">
<label>Titulo*:</label>
<br>
<input name="titulo" class="text" />
<br>
<label>Postado por*:</label>
<br>
<input name="autor" class="text" />
<br>
<label>Categoria*:</label>
<br>
<select name="categoria">
<?php
$selecionar_db_categoria = "SELECT * FROM categorias ORDER BY id DESC";
// Seleciona a tabela 'categorias' no banco de dados
$categoria_final = mysql_query($selecionar_db_categoria)
// Mensagem caso aconteça um erro na conexão
or die ("<h1>Erro ao Conectar-se ao Banco de dados</h1>");
// Pega os valores da tabela 'categorias'
while ($categoria_db=mysql_fetch_array($categoria_final)) {
$id = $categoria_db["id"];
$categoria = $categoria_db["categoria"];
echo "<option value=\"$id\">$categoria</option>";
}
?>
</select>
<br>
<script language="JavaScript">
function abrir(URL) {
var width = 400;
var height = 532;
var left = 99;
var top = 99;
window.open(URL,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, resizable=no, fullscreen=no');
}
</script>
<label>Cole o link da imagem que você quer destacar no seu post*</label>
<input name="imagens" type="url" >
<br>
<label>Tag*:</label>
<input name="tags" class="text">
<br>
<label>Texto*:</label>
<br>
<textarea name="texto" rows="30" cols="100%"></textarea>
<br>
<input type="submit" value="Adicionar Notícia">
</form>
noticias.php
<title>Noticias</title>
<style>
.noticias{
position: relative;
top: 115px;
float: left;
margin-left: 100px;
padding: 0 5px;
}
</style>
<div style="text-align:center; position:relative; float:right;">
<form method="GET" action="busca.php">
<label for="consulta">Buscar:</label>
<input type="text" name="busca" id="busca" maxlength="255" />
<input type="submit" value="OK" />
</form>
</div>
<?php
// Conexão com o Banco de Dados
include('views/config.php');
$selecionar_db = "SELECT * FROM news ORDER BY id DESC";
$final = mysql_query($selecionar_db)
or die ("<h1>Erro ao Conectar-se ao Banco de dados</h1>");
while ($news=mysql_fetch_array($final)) {
$id = $news["id"];
$titulo = $news["titulo"];
$categoria_id = $news["categoria"];
$autor = $news["autor"];
$views = $news["views"];
$texto = $news["texto"];
$imgs = $news["imagens"];
$date = $news["date"];
$date2 = strtotime($date);
$data = date('d/m/Y', $date2);
$hora = date('H:i', $date2);
$comentarios_db = "SELECT * FROM comentarios WHERE noticia_id='$id'";
$comentarios_db = mysql_query($comentarios_db);
$comentarios = mysql_num_rows($comentarios_db);
$categoria_db = "SELECT * FROM categorias WHERE id='$categoria_id'";
$categoria_resultado = mysql_query($categoria_db);
$categoria_final = mysql_fetch_assoc($categoria_resultado);
$categoria = $categoria_final['categoria'];
$texto = substr("$texto", 0, 550);
?>
<div class="noticias">
<h1><a href="/test/noti_admin/noticia.php?id=<?php echo"$id";?>"><?php echo"$titulo";?></a></h1>
<p>Postado por <b><?php echo"$autor";?></b> em <b><?php echo"$data";?></b> ás <b><?php echo"$hora";?></b> - <b><?php echo"$views";?></b> Visualizações | <b><?php echo"$comentarios";?></b> Comentários | Categoria:<a href="/test/noti_admin/mostra-categoria.php?id=<?php echo"$categoria_id";?>"><b><?php echo"$categoria";?></b></a></p>
<p><section style='float: left; margin-left: 3px;margin-right:2px;'><img src="<?php echo"$imgs";?>" width='115' height='115'></section></p><p><?php echo"$texto";?> <a href="/test/noti_admin/noticia.php?id=<?php echo"$id";?>">Leia Mais...</a></p>
</div>
<?php }?>
noticia.php
<?php
// Faz conexão com o Banco de Dados
include('views/config.php');
// Seleciona o id da noticia
$id = $_GET['id'];
// Adiciona +1 de Visualizações a cada pessoa que acessar a noticia
$views_db = mysql_query("SELECT * FROM news WHERE id = '$id'");
$row = mysql_fetch_array($views_db);
$view = $row['views'];
$views = $view + 1;
$views_db = mysql_query("UPDATE news SET views = '$views' WHERE id = '$id'");
// Seleciona a noticia pelo id da página
$selecionar_db = "SELECT * FROM news WHERE id = '$id'";
$final = mysql_query($selecionar_db);
// Pega os valores da noticia
while ($new=mysql_fetch_array($final)) {
$id = $new["id"];
$titulo = $new["titulo"];
$categoria_id = $new["categoria"];
$autor = $new["autor"];
$views = $new["views"];
$texto = $new["texto"];
$tag = $new["tags"];
$imgs = $new["imagens"];
$date = $new["date"];
// Altera o Formato da data da noticia
$date_news = strtotime($date);
$data = date('d/m/Y', $date_news);
$hora = date('H:i', $date_news);
// Pega o número de Comentários que a noticia possui
$comentarios_db = "SELECT * FROM comentarios WHERE noticia_id='$id'";
$comentarios_db = mysql_query($comentarios_db);
$comentarios = mysql_num_rows($comentarios_db);
// Faz a seleção da Categoria
$categoria_db = "SELECT * FROM categorias WHERE id='$categoria_id'";
$categoria_resultado = mysql_query($categoria_db);
$categoria_final = mysql_fetch_assoc($categoria_resultado);
$categoria = $categoria_final['categoria'];
echo "<title>$titulo</title>";
echo "<h1>$titulo</h1><p>Postado por <b>$autor</b> em <b>$data</b> ás <b>$hora</b> - <b>$views</b> Visualizações | <b>$comentarios</b> Comentários | Categoria: <a href=\"mostra-categoria.php?id=$categoria_id\"><b>$categoria</b></a> |</p><img src='$imgs'><p>$texto</p>";
echo "<p>Tags:<b>$tag</b></p>";
echo "______________________________________________________________________________________________________________________________________________________________________";
echo "<h3>$comentarios Comentários:</h3>";
}
?>
<?php
// Faz conexão com a tabela Comentários
$id = $_GET['id'];
$selecionar_db_comentarios = "SELECT * FROM comentarios WHERE noticia_id = '$id' ORDER BY id DESC";
$selecionar_db_comentarios_final = mysql_query($selecionar_db_comentarios);
// Pega os valores da tabela 'comentarios'
while ($comentario_db=mysql_fetch_array($selecionar_db_comentarios_final)) {
$id = $comentario_db["id"];
$autor = $comentario_db["autor"];
$comentario = $comentario_db["comentario"];
$date = $comentario_db["date"];
echo "<b>$autor</b> em <b>$date</b> comentou:<p>$comentario</p>";
}
?>
______________________________________________________________________________________________________________________________________________________________________
<h3>Comentar:</h3>
<?php
// Mensagem caso os campos estejam vazios
if (!empty($_POST) AND (empty($_POST['autor']) OR empty($_POST['comentario']) OR empty($_POST['email']))) {
echo "<font color=\"#ff0000\">Por Favor Preencha os campos Vazios</font>";
} else {
$autor = $_POST["autor"];
$mensagem = $_POST["mensagem"];
$email = $_POST["email"];
if($autor == "" && $email == "" && $mensagem == ""){} else {
// Adiciona o Comentário na Noticia
$comentario_add = "INSERT INTO comentarios (noticia_id, ip, autor, comentario,date,email) VALUES ('".addslashes(mysql_real_escape_string($_GET["id"]))."', '".addslashes(mysql_real_escape_string($_SERVER['REMOTE_ADDR']))."', '".addslashes(mysql_real_escape_string(strip_tags($_POST['autor'])))."', '".addslashes(mysql_real_escape_string(strip_tags($_POST['comentario'])))."', NOW(), '".addslashes(mysql_real_escape_string(strip_tags($_POST['email'])))."')";
$comentario_add = mysql_query($comentario_add)
or die ("Erro ao Adicionar Comentário.");
echo "Comentário Adicionado com sucesso | <a href=\"noticia.php?id=".$_GET['id']."\">Atualizar Página para ver seu comentário</a>";
}
}
?>
<form name="input" action="noticia.php?id=<?php echo $_GET['id']; ?>" method="post">
<label>Seu nome:</label>
<input name="autor" class="text" />
<br>
<label>Seu Email:</label>
<input name="email" class="text" />
<br>
<label>Comentário:</label>
<br>
<textarea name="comentario" rows="5" cols="50"></textarea>
<br>
<input type="submit" value="Enviar Comentário">
</form>