Olá pessoal, sou novo aqui, antes de mais nada gostaria de dizer Olá ;)
Meu problema é o seguinte:
Eu fiz um sistema de comentários com ajax+php e fiz vários testes com ele e vi que ele funciona quando está sozinho em uma página, ou dentro de um só if, mas no meu caso eu preciso usar 2 if, um para verificar se existe um id da notícia e incluir ela inteira e outro if pra verificar se existe uma sessão para, se sim, poder deixar o usuário inserir um comentário.
O código fica assim (apenas a parte que citei acima):
<?php
if(isset($_GET['id'])) {
include ("noticias_tudo.php"); // se tem id da noticia vai inserir a noticia toda
if(isset($_SESSION['id'])) { // se o usuario ta logado vai exibir o form de comentario
?>
<h1>Deixe seu comentário</h1>
<?php
$sqlc = mysql_query("SELECT * FROM comentarios ORDER BY id ASC");
while($dados = mysql_fetch_array($sqlc)) {
$nome = $dados['nome'];
$texto = $dados['texto'];
$data = $dados['data'];
echo "<div id="tdcomentarios">
";
echo "$nome comentou em $data:<br/>$texto
";
echo "</div>
";
}
?>
<div id="resposta"></div>
<form id="nome" name="nomef" method="post" action="java script:enviaForm()">
<table width="100%" border="0" cellspacing="10" cellpadding="10">
<tr>
<td width="34%"><strong>Comentário:</strong></td>
<td width="66%"><textarea name="comentario" id="comentario2" cols="61" rows="5"></textarea></td>
</tr>
<tr>
<td><input name="submit" type="submit" class="button" id="submit" value=" Enviar " /></td>
</tr>
</table>
</form>
<div id="load"><img src="/media/images/loader.gif" /> Enviando...</div>
<script type="text/javascript">
function enviaForm() {
var comentario = $('#comentario2').val();
if(comentario != '') {
$('#load').show();
$('form')[0].reset();
$('#nomef').fadeTo("slow", 0.3);
$.post("envia.php",{comentario: comentario},
function(retorno){
$('#load').fadeOut();
$("<div id='comentario'>"+retorno+"</div>").fadeIn().appendTo('#resposta');
$('#nomef').fadeTo("slow", 1);
});
} else {
alert("Preencha o campo.");
}
return false;
}
</script>
<?php
} else {
echo "Você deve fazer login para comentar.";
}
} else {
// aqui vai listar as noticias se não tiver id
}
?>
Então, gostaria de saber o porquê disto estar acontecendo e como resolver este problema.
Pergunta
Nathan Ribeiro
Olá pessoal, sou novo aqui, antes de mais nada gostaria de dizer Olá ;)
Meu problema é o seguinte:
Eu fiz um sistema de comentários com ajax+php e fiz vários testes com ele e vi que ele funciona quando está sozinho em uma página, ou dentro de um só if, mas no meu caso eu preciso usar 2 if, um para verificar se existe um id da notícia e incluir ela inteira e outro if pra verificar se existe uma sessão para, se sim, poder deixar o usuário inserir um comentário.
O código fica assim (apenas a parte que citei acima):
<?php if(isset($_GET['id'])) { include ("noticias_tudo.php"); // se tem id da noticia vai inserir a noticia toda if(isset($_SESSION['id'])) { // se o usuario ta logado vai exibir o form de comentario ?> <h1>Deixe seu comentário</h1> <?php $sqlc = mysql_query("SELECT * FROM comentarios ORDER BY id ASC"); while($dados = mysql_fetch_array($sqlc)) { $nome = $dados['nome']; $texto = $dados['texto']; $data = $dados['data']; echo "<div id="tdcomentarios"> "; echo "$nome comentou em $data:<br/>$texto "; echo "</div> "; } ?> <div id="resposta"></div> <form id="nome" name="nomef" method="post" action="java script:enviaForm()"> <table width="100%" border="0" cellspacing="10" cellpadding="10"> <tr> <td width="34%"><strong>Comentário:</strong></td> <td width="66%"><textarea name="comentario" id="comentario2" cols="61" rows="5"></textarea></td> </tr> <tr> <td><input name="submit" type="submit" class="button" id="submit" value=" Enviar " /></td> </tr> </table> </form> <div id="load"><img src="/media/images/loader.gif" /> Enviando...</div> <script type="text/javascript"> function enviaForm() { var comentario = $('#comentario2').val(); if(comentario != '') { $('#load').show(); $('form')[0].reset(); $('#nomef').fadeTo("slow", 0.3); $.post("envia.php",{comentario: comentario}, function(retorno){ $('#load').fadeOut(); $("<div id='comentario'>"+retorno+"</div>").fadeIn().appendTo('#resposta'); $('#nomef').fadeTo("slow", 1); }); } else { alert("Preencha o campo."); } return false; } </script> <?php } else { echo "Você deve fazer login para comentar."; } } else { // aqui vai listar as noticias se não tiver id } ?>Então, gostaria de saber o porquê disto estar acontecendo e como resolver este problema.
Obrigado desde já!!!
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.