Hola muy buenas, mi intecion es que mediante ajax (o java script o cualquier cosa que en esto soy muy abierto) se introduzca un nuevo registro en la base de datos.
He estado mirando por internet pero la verdad no me esta quedando muy claro, yo he cogido un ejemplo que funcionaba y lo he intentado modificar para que haga lo que yo deseo, dejando este codigo:
Archivo con formulario:
Código PHP:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
$(function(){
$("#btn_enviar").click(function(){
var url = "/modules/comunicacion/agregar_comentario.php"; // El script a dónde se realizará la petición.
$.ajax({
type: "POST",
url: url,
data: $("#envio_comentario").serialize(), // Adjuntar los campos del formulario enviado.
success: function(data)
{
$("#respuesta").html(data); // Mostrar la respuestas del script PHP.
}
});
return false; // Evitar ejecutar el submit del formulario.
});
});
</script>
<div id="comentario">
<form method="post" id="envio_comentario" >
<fieldset>
<ol>
<li><label>Comentario:</label><input type="text" size="30" name="comentario" /></li>
<input type="hidden" name="proceso_id" value="<?php echo $_GET['id'];?>" /></li>
<input type="hidden" name="usuario_id" value="<?php echo $_SESSION['id_usuario'];?>" /></li>
</ol>
<input type="button" id="btn_enviar" value="Buscar nombre">
</fieldset>
</form>
</div>
<div id="respuesta">
</div>
archvio donde recibo los datos:
Código PHP:
<?php
/*Conexion a BBDD*/
include('../conexion.php');
$time_stamp=date("d-m-Y H:i:s");
$comentario = addslashes(htmlspecialchars($_POST['comentario']));
$usuario_id = addslashes(htmlspecialchars($_POST['usuario_id']));
$proceso_id = addslashes(htmlspecialchars($_POST['proceso_id']));
/*INSERCCION DE DATOS*/
mysql_query('INSERT INTO comentarios_procesos SET comentario="'.$comentario.'", id_usuario="'.$usuario_id.'", proceso_id="'.$_POST['proceso_id'].'", fecha_creacion="'.$time_stamp.'"');
echo 'comentario guardado';
?>