Hola compañeros, se que he preguntado mucho ultimamente, pero han surgido algunas cosas donde paso mucho tiempo sin poder resolver. Tengo una tabla donde elimino el dato seleccionando el codigo, el proceso de eliminacion lo hace, pero no refresca automaticamente.
Productos.js Este es el archivo donde estan las funciones JavaScript, AJAX
Código Javascript
:
Ver originalfunction 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;
}
function enviarDatosProducto(){
//donde se mostrará lo resultados
divResultado = document.getElementById('productos');
//valores de los inputs
cod=document.productos.codigo.value;
pro=document.productos.proveedor.value;
doc=document.productos.documento.value;
cant=document.productos.cantidad.value;
/*mat=document.productos.material.value;
tac=document.productos.tacon.value;*/
//instanciamos el objetoAjax
ajax=objetoAjax();
//uso del metodo POST
//archivo que realizará la operacion
//registro.php
ajax.open("POST","productos.php",true);
ajax.onreadystatechange=function() {
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
/*+"&marca="+mar+"&modelo="+mod+"&color="+col+"&material="+mat+"&tacon="+tac*/
ajax.send("&codigo="+cod+"&proveedor="+pro+"&documento="+doc+"&cantidad="+cant)
}
function LimpiarCampos(){
document.productos.codigo.value="";
document.productos.proveedor.value="";
document.productos.documento.value="";
document.productos.cantidad.value="";
/*document.productos.material.value="";
document.productos.tacon.value="";*/
document.productos.codigo.focus();
}
function eliminarDato(codigo){
//donde se mostrará el resultado de la eliminacion
divResult = document.getElementById('productos');
//usaremos un cuadro de confirmacion
var eliminar = confirm("De verdad desea eliminar este dato?")
if ( eliminar ) {
//instanciamos el objetoAjax
ajax=objetoAjax();
//uso del medotod GET
//indicamos el archivo que realizará el proceso de eliminación
//junto con un valor que representa el id del empleado
ajax.open("GET", "eliminacion.php?codigo="+codigo);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
//mostrar resultados en esta capa
divResult.innerHTML = ajax.responseText
}
}
//como hacemos uso del metodo GET
//colocamos null
ajax.send(null)
}
}
Productos.php aqui se hace la insercion de los datos, la consulta y la eliminacioncon el metodo onclick
Código PHP:
<?php
include('conex.php');
//consulta todos los empleados
$cod=$_POST['codigo'];
$pro=$_POST['proveedor'];
$doc=$_POST['documento'];
$cant=$_POST['cantidad'];
$item= '001';
$tipdoc = 'ORC';
/*$contar = "SELECT MAX(mov_item) FROM dpmovinv WHERE mov_docume = '$doc' AND mov_tipdoc='$tipdoc' AND mov_codcta='$pro'";
if ($contar=="0")
{
$contar = $contar+1;
}
echo $contar;
*/
//echo $contar;
$sql=mysql_query("INSERT INTO dpmovinv(mov_codigo,mov_codcta,mov_docume,mov_cantid,mov_item,mov_tipdoc) VALUES ('$cod','$pro','$doc','$cant','$contar','$tipdoc')");
//$row = mysql_fetch_array($sql);
$sql1=mysql_query("SELECT mov_codigo,mov_codcta,mov_docume,mov_cantid,mov_item,mov_tipdoc,
inv_codmar,inv_modelo,inv_color,inv_materi,inv_tacon FROM dpmovinv
INNER JOIN dpinv ON inv_codigo=mov_codigo WHERE mov_docume='$doc' AND mov_codcta='$pro'");
?>
<table style="border:1px solid #FF0000; color:#000;width:890px;">
<tr style="background:#1c68be;">
<td>Codigo</td>
<td>Proveedor</td>
<td>Numero Fac</td>
<td>Cantidad</td>
<td>Item</td>
<td>Tipo</td>
<td>Descripcion</td>
<td>Modelo</td>
<td>Color</td>
<td>Material</td>
<td>Tacon</td>
</tr>
<?php
while($row1 = mysql_fetch_array($sql1))
{
echo " <tr>";
echo " <td><a style=\"text-decoration:underline;cursor:pointer;\" onclick=\"eliminarDato('".$row1['mov_codigo']."')\">".$row1['mov_codigo']."</a></td>";
echo " <td>".$row1['mov_codcta']."</td>";
echo " <td>".$row1['mov_docume']."</td>";
echo " <td>".$row1['mov_cantid']."</td>";
echo " <td>".$row1['mov_item']."</td>";
echo " <td>".$row1['mov_tipdoc']."</td>";
echo " <td>".$row1['inv_codmar']."</td>";
echo " <td>".$row1['inv_modelo']."</td>";
echo " <td>".$row1['inv_color']."</td>";
echo " <td>".$row1['inv_materi']."</td>";
echo " <td>".$row1['inv_tacon']."</td>";
echo " </tr>";
}
?>
</table>
Eliminar.php Aqui se hace el proceso de Eliminar
Código PHP:
<?php
include('conex.php');
//variable GET
$cod=$_GET['codigo'];
//elimina el registro de la tabla empleados
$sql="DELETE FROM dpmovinv WHERE mov_codigo='$cod'";
mysql_query($sql);
//include('productos.php');
?>
Formulario.php Este es el Front
Código HTML:
Ver original<script type="text/javascript" src="js/productos.js"></script>
<div style="width:220px;" > <form name="productos" action="" onsubmit="enviarDatosProducto(); return false">
<table width="200" border="0"> <input type="text" name="codigo" size="15" > <!--<td bgcolor="#CCCCCC" ><label>Material</label></td>
<td bgcolor="#CCCCCC" ><label><input type="text" name="material" size="10" ></label></td>
<td bgcolor="#CCCCCC" ><label>Tacon</label></td>
<td bgcolor="#CCCCCC" ><label><input type="text" name="tacon" size="10" ></label></td>-->
<input type="submit" name="Submit1" value="Grabar" /> <input type="submit" name="borrar" value="Cancelar" /> <div id="productos"><?php include('productos.php'); ?></div>
Todo este proceso lo hace bien, el problema esta que cuando presiono el codigo para eliminar la linea no me actualiza automaticamente, pero el registro si lo elimina. Espero puedan ayudarme.
P.D.: Como hago un contador que se sume en 1 de la forma: 0001 , 0002, 0003,
Saludos.