Can someone help me insert comments into my database and then show them without refreshing the page?
HOME.PHP
<!-- BIBLIOTECA JQUERY(OFF-LINE)-->
<script src="JQuery/jquery-1.11.3.js"></script>
<!--JAVASCRIPT-->
<script type="text/javascript" language="javascript">
$(document).ready(function() {
//quando o utilizador clicar em button...
$('button').click(function(){
var txt_comentario = $('#txt_comentario').val();
$.ajax({
url: 'inserir_comentario.php', <!--URL que desejamos solicitar-->
type: 'POST', <!--metodo usado-->
data: {txt_comentario:txt_comentario}, <!--dados a enviar no pedido-->
function(resposta_da_url){ <!--conteúdo da página solicitada-->
$('#mostrar_comentarios').prepend(txt_comentario + '<br>');
});
});
});
});
</script>
</head>
<body>
<div class="conteudo"><!--INICIO DA CLASS CONTEUDO-->
<form id="form_comentario" action="javascript: func()" method="post">
<textarea name="txt_comentario" id="txt_comentario" onKeyDown="autoResize()" maxlength="500" placeholder="Digite o seu comentario..."></textarea>
<br>
<div id="status" style="display: none;"></div>
<button>Comentar</button>
<!--NOTA - Vale ressaltar que para fazer isso você não pode usar o botão submit, pois por mais que sua ação seja nula
ele irá atualizara página...-->
<!--<input type="submit" name="btn_comentar" value="comentar">-->
</form>
<div id="mostrar_comentarios">
<?php
require_once 'ligacao_BaseDados.php';
$buscar_comentario = $ligacao->query("SELECT * FROM comentarios ORDER BY id_comentario DESC") or die(mysqli_error() );
while($mostrar = mysqli_fetch_array($buscar_comentario))
{
$id_comentario = $mostrar['id_comentario'];
$comentario = $mostrar['text_comentario'];
echo $comentario ;
}
?>
</div>
INSERT_COMENTARY.PHP
<?php
require_once 'Ligacao_BaseDados.php';
$comentario = $_POST['txt_comentario'];
if (empty($comentario))
{
echo '<span class="msg" style="color:red">Não pode comentar em branco! </span>';
}
// Se não houver nenhum erro
else {
// Inserimos no banco de dados
$inserir_comentario = $ligacao->query("INSERT INTO comentarios (text_comentario) VALUES ( '".$comentario."' ) ")or die(mysqli_error() );
echo '<span class="msg" style="color:green">Obrigado pelo comentario! </span>';
$buscar_comentario = $ligacao->query("SELECT * FROM comentarios ORDER BY id_comentario DESC") or die(mysqli_error() );
while($mostrar = mysqli_fetch_array($buscar_comentario))
{
$id_comentario = $mostrar['id_comentario'];
$comentario = $mostrar['text_comentario'];
}
echo $comentario;
}
?>