Dúvida php

29/01/2016

0

PHP

Galera este e o meu codigo de comentario, porém o usuario pode responder um comentario só que quando o usuario responder um comentario ele aparece em outros comentarios vcs poderiam me dizer o pq? já tentei de tudo e não conseguir descobrir o pq.


<!-- css-->
<link rel="stylesheet" type="text/css" href="css/style.css" media="all" />

<!-- importação javascript -->
<script type="text/javascript" src="js/jquery-1.12.0.min.js"></script>
<script type="text/javascript" src="js/funcao.js"></script>
<body>
    <div id="geral">
    
    <?
	include 'conection.php';
  $busca = mysqli_query($iconexao,"SELECT * FROM comentario");
	 $contaComents = mysqli_num_rows($busca);
	 
	while($linha = mysqli_fetch_object($busca)){
	 $titulo = $linha->titulo;
	 $conteudo = $linha->conteudo;

  ?>    
       <div class="postagem">
       <h2><?php  echo $titulo; ?></h2>
       <p><?php  echo $conteudo; ?></p>
         
        
         
         <?php
	if(isset($_POST['acao']) && $_POST['acao'] == 'preenchido'){
		$comentario = trim($_POST['comentario']);
		
		if(empty($comentario)){
			echo "<script>alert(\"Preecha todos os campos\");</script>";
		}else{

			$inserirDados = mysqli_query($iconexao,"INSERT INTO comentarios (login, comentario) VALUES ('$login','$comentario')");
			echo "<script>alert(\"Enviado com Sucesso!\");</script>";
			header("Location: admin.php");
		}
	}
?>

 <span class="abre_coment">Comentarios</span>
              
              <div id="comentarios">
              <form action="" method="post" name="form_comentario" id="form_comentario">
                  <input type="text" name="nome_comentario" value="Digite seu nome" class="campo" />
                  <input type="text" name="comentario" size="50" value="Digite seu comentario" class="campo" />
                 <input type="hidden" name="acao" value="preenchido" />
        <input type="submit" name="botao" style="display:none" />
              </form>


<?php
	$selecionarDados = mysqli_query($iconexao,"SELECT * FROM comentarios ");
	$contaComents = mysqli_num_rows($selecionarDados);
	
			while($campos = mysqli_fetch_array($selecionarDados)){
		   $comentario = $campos['comentario'];
			
?>
         
                   <div class="comentarios">
                   <strong>Nome:</strong>
                   <p>Comentario: <?php  echo $comentario; ?></p>
                 
                 
                 
                 
                 
<?php
	if(isset($_POST['acao1']) && $_POST['acao1'] == 'preenchido'){
		$resposta = trim($_POST['resposta']);
		
		
			$inserirDados = mysqli_query($iconexao,"INSERT INTO respostas (login, resposta) VALUES ('$login','$resposta')");
			echo "<script>alert(\"Enviado com Sucesso!\");</script>";
			header("Location: admin.php");
		}
	
?>
                      
                  <span class="abre_respostas">Respostas</span>
                  <div id="respostas">
                   <form action="" method="post" name="form_respostas" id="form_respostas" style="padding:10px;">
                     <input type="text" name="nome_resposta" value="Digite seu nome" class="campo" />
                       <input type="text" name="resposta" value="Digite sua resposta" class="campo" size="40"/>
                     <input type="hidden" name="acao1" value="preenchido" />
                     <input type="submit" name="botao" style="display:none" />
                     </form>
                     
                     <?php 
		                    $selecionarDadoss = mysqli_query($iconexao,"SELECT * FROM respostas ");
	                            $contaComentss = mysqli_num_rows($selecionarDadoss);
	
		                         	while($campo = mysqli_fetch_array($selecionarDadoss)){
		                              $resposta = $campo['resposta'];
       				 ?>
                      
                                    <div class="respostas"> 
                                      <strong>Nome</strong>
                                    <p>Resposta: <?php  echo $resposta; ?></p>
                                    <? } ?>     
                   </div>                         
                   </div>
                   </div>
              </div><!-- comentarios -->    
          </div><!-- classe o postagem -->
          <?
            }
			}  
          ?>
     </div><!-- geral -->  
</body>
Hiago Orneles

Hiago Orneles

Responder

Post mais votado

01/02/2016

Seu código da pra colocar uns sql injection legal.
Tenta modificar isso ai. Essa mistura de html com PHP ficou ruim de ler.
Organize suas entidades, nao consegui entender direito a relação "comentarios" e "respostas"

David Sylvestre

David Sylvestre
Responder

Mais Posts

31/01/2016

William

Hiago que sistema é esse, um blog, e-commerce, rede social e etc ...

Fica muito vago "quando o usuario responder um comentario ele aparece em outros comentarios", se fosse um blog o comentário deveria ser filiado ao id do post em que foi respondido, mas estou tentando adivinhar o que vc está fazendo!
Responder

02/02/2016

Claudio Lopes

Hiago...

Se você for iniciante no PHP, procure estudar orientação a objetos, com a introdução você já começa a utilizar alguns CRUD's (CREATE, READ, UPDATE, DELETE). Após finalizar o esse curso, parte para um framework, assim você digita menos (pois existe muita classe pronta) e se proteje contra sql injection.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar