Comentarles que estoy queriendo crear un abm, alta, baja y modificacion de registros con ajax. En otras palabras, pasar un abm tradicional hecho en php y mysql a ajax.
bien, al grano.
La insercion de registros ya la he hecho y funciona perfecto. Consta de dos paginas, una el index y la otra la que procesa las variables del formulario e inserta el registro.
index.php
Código:
inserta.php<form action="inserta.php" method="get">
<input type="text" name="nombre" id="nombre"/>
<input type="submit" value="+" id="enviar"/>
</form>
<script type="text/javascript">
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#enviar");
x.click(presionSubmit);
}
function presionSubmit()
{
var v=$("#nombre").attr("value");
$.get("inserta.php",{nombre:v});
return false;
}
</script>
Código:
Como les dije funciona perfecto pero tengo el problema que una vez que se hace el "insert into" el index no se refrezca automaticamente.<?php
require_once("conexion.php");
$sql= "insert into registros
values
(null, '".$_GET{"nombre"}."')
";
$res=mysql_query($sql,$conect);
?>
Es lógico que esto ocurra porque traigo los registros de este modo:
Código:
He aquí mi problema. <?php
$consulta="
select * from registros
";
$respuesta=mysql_query($consulta,$conect);
while($reg=mysql_fetch_array($respuesta))
{
?>
<tr class="registros">
<td><span class="id"><?php echo $reg['id']?></span></td>
<td><span class="nombre"><?php echo $reg['nombre']?></span></td>
</tr>
<?php
}
?>
¿Como traer registros sin usar $.get o $.post?
He intentado solucionarlo, aunque sin éxito, del siguiente modo:
Creé una pagina llamada pagina.php la cual alojé dentro de una carpeta llamada cargas.
Dentro de pagina.php incluí:
Código:
y luego en index.php dentro de <head></head><?php
$consulta="
select * from registros
";
$respuesta=mysql_query($consulta,$conect);
while($reg=mysql_fetch_array($respuesta))
{
?>
<tr class="registros">
<td><span class="id"><?php echo $reg['id']?></span></td>
<td><span class="nombre"><?php echo $reg['nombre']?></span></td>
</tr>
<?php
}
?>
Código:
Bien, esto no funcionó. <script type="text/javascript">
$(document).ready(function(){
$('#cargamos').load('cargas/pagina.php');
});
</script>
Me han comentado que para resolver este problema debo usar json.
Pero no tengo idea de como llevar a cabo esta tarea usando json.
Desde ya le agradezco si pueden compartirme un link, tutorial o ejemplo.
Sin mas, un fuerte abrazo.
/////////////////
Edito:
En este enlace pueden ver en funcionamiento el trabajo.
Notaran que luego de hacer click en el boton "+" se inserta el registro sin refrescar la pagina.
Pero no muestra el registro hasta que no pulsamos f5.


