Jump to content


nathanfeitoza

Member Since 09/06/2015
Offline Last Active 11/06/2015, 13:17
-----

Topics I've Started

Php não mostra HTML correto adicionado por Textarea

10/06/2015, 23:09

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" >
<p><a href="javascript:abrir('http://localhost/img...load/');">Enviesua imagem pra cá</a></p>
 <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>
 
 

Como solucionar um problema no meu script de buscas

09/06/2015, 18:52

 
Olá, galera.
 
Bom, sou novo no php e tô me arriscando em criar um sistema de noticias e queria que vocês me ajudassem a solucionar o meu problema com o script de buscas, pois não consigo. Abaixo estão os códigos onde as noticias são exibidas e o script que faz a busca.
 
 
<title>Noticias</title>
<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"];
 
$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, -400); 
 
 
echo "<h1><a href=\"noticia.php?id=$id\">$titulo</a></h1><p>Postado por $autor em $data ás $hora - $views Visualizações | $comentarios Comentários | Categoria:<a href=\"mostra-categoria.php?id=$categoria_id\">$categoria</a></p><p>$texto <a href=\"noticia.php?id=$id\">Leia Mais...</a></p>";
 
 
}
?>
 
 
 
 
Busca.php
 
<?php
// Conexão com o Banco de Dados
include('views/config.php');
 
$termo = $_GET['busca'];
$busca = mysql_query ('SELECT * FROM news WHERE tags LIKE "%$termo%" ORDER BY id DESC');
 
$check_rows_ex = mysql_num_rows($termo);
while($src = mysql_fetch_array($busca)) {
if ($check_rows_ex < 1) {
echo "Nada encontrado.";
 
} else {
?>
<h2><a href=\"noticia.php?id=<?php echo $src['id'];?>\"><?php echo $src['titulo'];?></a></h2><p><?php echo $src['texto'];?></p>
<?php } ?>
<?php } ?>

IPB Skin By Virteq