Muchas gracias
Código HTML:
<!-- Contact form --> <form class="contact-form" name="nuevo_empleado" id="nuevo_empleado" action="" onsubmit="enviarDatosComentario(); return false"> <input type="hidden" name="id_publicacion" id="id_publicacion" value="<?php echo $_POST['id_publicacion_p1']; ?>" /> <input type="hidden" name="id_user_publicacion" id="id_user_publicacion" value="<?php echo $_POST['id_user_p1']; ?>" /> <input type="hidden" name="id_user_respuesta" id="id_user_respuesta" value="<?php echo $_SESSION["id_user"]; ?>" /> <textarea name="comentario" id="comentario" class="your-label-contact-text" placeholder="Escribe tu pregunta..."></textarea> <p>Prohibido ingresar datos de contacto, y no uses un lenguaje vulgar.</p> <button type="submit" name="submit" id="submit" class="button-green upp">Preguntar</button> </form> <!-- and Contact form --> <div id="resultado"> <?php $sql="SELECT `id_comentario_c`, `id_publicacion_c`, `user_pregunta_c`, `user_respuesta_c`, `comentario_c`, `fecha_comentario` FROM `comentarios` WHERE `id_publicacion_c`='$_POST[id_publicacion_p1]'" or die .mysqli_error(); $result= ejecuta($con,$sql); $cantidad_filas= cantidadFilas($result); if($cantidad_filas==0){ ?> <p> <hr> <div class="alert alert-danger" role="alert"> <i class="fa fa-frown-o"></i> No hay preguntas realizadas en esta publicación </div> <hr> </p> <?php } else{ while (list($_POST['id_comentario_c'], $_POST['id_publicacion_c'], $_POST['user_pregunta_c'], $_POST['user_respuesta_c'], $_POST['comentario_c'], $_POST['fecha_comentario'])= obtenerMyNum($result)){ ?> <p> <hr> <p> <strong> <i class="fa fa-comment"></i> <?php echo utf8_encode($_POST['comentario_c']); ?></strong></p> <hr> </p> <?php } } ?> </div>
Código PHP:
// JavaScript Document
// Función para recoger los datos de PHP según el navegador, se usa siempre.
function objetoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
//Función para recoger los datos del formulario y enviarlos por post
function enviarDatosComentario(){
//div donde se mostrará lo resultados
divResultado = document.getElementById('resultado');
//recogemos los valores de los inputs
idp=document.nuevo_empleado.id_publicacion.value;
idpre=document.nuevo_empleado.id_user_publicacion.value;
idres=document.nuevo_empleado.id_user_respuesta.value;
com=document.nuevo_empleado.comentario.value;
//instanciamos el objetoAjax
ajax=objetoAjax();
//uso del medotod POST
//archivo que realizará la operacion
//registro.php
ajax.open("POST", "php/registroComentario.php",true);
//cuando el objeto XMLHttpRequest cambia de estado, la función se inicia
ajax.onreadystatechange=function() {
//la función responseText tiene todos los datos pedidos al servidor
if (ajax.readyState==4) {
//mostrar resultados en esta capa
divResultado.innerHTML = ajax.responseText
//llamar a funcion para limpiar los inputs
LimpiarCampos();
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviando los valores a registro.php para que inserte los datos
ajax.send("id_publicacion="+idp+"&id_user_publicacion="+idpre+"&id_user_respuesta="+idres+"&comentario="+com)
}
//función para limpiar los campos
function LimpiarCampos(){
document.nuevo_empleado.id_publicacion.value="";
document.nuevo_empleado.id_user_publicacion.value="";
document.nuevo_empleado.id_user_respuesta.value="";
document.nuevo_empleado.comentario.value="";
document.nuevo_empleado.id_publicacion.focus();
}
Código PHP:
<?php
if(isset($_POST['comentario'])){
//Start connection database
require_once "conexion_sql.php";
$con=conectar();
$comentario= utf8_decode($_POST['comentario']);
$id_user_publicacion= $_POST['id_user_publicacion'];
$id_user_pregunta= $_POST['id_user_respuesta'];
$id_publicacion= $_POST['id_publicacion'];
// Establesco la zona horaria
date_default_timezone_set('America/Caracas');
$fecha_comentario= date('Y-m-d');
$sql="INSERT INTO `comentarios`(`id_publicacion_c`, `user_pregunta_c`, `user_respuesta_c`, `comentario_c`, `fecha_comentario`)
VALUES ('$id_publicacion','$id_user_pregunta','$id_user_publicacion','$comentario','$fecha_comentario')" or die .mysqli_error();
$result= ejecuta($con,$sql);
//Cierro conexion bases de datos
$cerrar=cerrar($con);
}
?>