Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/03/2011, 21:17
mixzplit
 
Fecha de Ingreso: enero-2011
Ubicación: Maracaibo
Mensajes: 179
Antigüedad: 13 años, 10 meses
Puntos: 2
Pregunta Eliminar Datos

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 original
  1. function objetoAjax(){
  2.     var xmlhttp=false;
  3.     try {
  4.         xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  5.     } catch (e) {
  6.         try {
  7.            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  8.         } catch (E) {
  9.             xmlhttp = false;
  10.         }
  11.     }
  12.  
  13.     if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  14.         xmlhttp = new XMLHttpRequest();
  15.     }
  16.     return xmlhttp;
  17. }
  18.  
  19.  
  20. function enviarDatosProducto(){
  21.     //donde se mostrará lo resultados
  22.     divResultado = document.getElementById('productos');
  23.     //valores de los inputs
  24.     cod=document.productos.codigo.value;
  25.     pro=document.productos.proveedor.value;
  26.     doc=document.productos.documento.value;
  27.     cant=document.productos.cantidad.value;
  28.     /*mat=document.productos.material.value;
  29.     tac=document.productos.tacon.value;*/
  30.    
  31.    
  32.     //instanciamos el objetoAjax
  33.     ajax=objetoAjax();
  34.     //uso del metodo POST
  35.     //archivo que realizará la operacion
  36.     //registro.php
  37.     ajax.open("POST","productos.php",true);
  38.     ajax.onreadystatechange=function() {
  39.         if (ajax.readyState==4) {
  40.             //mostrar resultados en esta capa
  41.             divResultado.innerHTML = ajax.responseText
  42.             //llamar a funcion para limpiar los inputs
  43.             LimpiarCampos();
  44.         }
  45.     }
  46.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  47.     //enviando los valores
  48. /*+"&marca="+mar+"&modelo="+mod+"&color="+col+"&material="+mat+"&tacon="+tac*/
  49.     ajax.send("&codigo="+cod+"&proveedor="+pro+"&documento="+doc+"&cantidad="+cant)
  50.  
  51. }
  52.  
  53. function LimpiarCampos(){
  54.     document.productos.codigo.value="";
  55.     document.productos.proveedor.value="";
  56.     document.productos.documento.value="";
  57.     document.productos.cantidad.value="";
  58.     /*document.productos.material.value="";
  59.     document.productos.tacon.value="";*/
  60.     document.productos.codigo.focus();
  61. }
  62.  
  63. function eliminarDato(codigo){
  64.     //donde se mostrará el resultado de la eliminacion
  65.     divResult = document.getElementById('productos');
  66.    
  67.     //usaremos un cuadro de confirmacion   
  68.     var eliminar = confirm("De verdad desea eliminar este dato?")
  69.     if ( eliminar ) {
  70.         //instanciamos el objetoAjax
  71.         ajax=objetoAjax();
  72.         //uso del medotod GET
  73.         //indicamos el archivo que realizará el proceso de eliminación
  74.         //junto con un valor que representa el id del empleado
  75.         ajax.open("GET", "eliminacion.php?codigo="+codigo);
  76.         ajax.onreadystatechange=function() {
  77.             if (ajax.readyState==4) {
  78.                 //mostrar resultados en esta capa
  79.                 divResult.innerHTML = ajax.responseText
  80.             }
  81.         }
  82.         //como hacemos uso del metodo GET
  83.         //colocamos null
  84.         ajax.send(null)
  85.     }
  86. }

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
  1. <script type="text/javascript" src="js/productos.js"></script>
  2.  
  3. <div style="width:220px;" >
  4. <form name="productos" action="" onsubmit="enviarDatosProducto(); return false">
  5.  
  6.       <table width="200" border="0">
  7.        <tr>
  8.         <td bgcolor="#CCCCCC" ><label>Codigo:</label></td>
  9.         <td bgcolor="#CCCCCC" ><label>
  10.           <input type="text" name="codigo" size="15" >
  11.         </label></td>
  12.         <td bgcolor="#CCCCCC" ><label>Proveedor:</label></td>
  13.         <td bgcolor="#CCCCCC" ><label><input type="text" name="proveedor" size="10" ></label></td>
  14.         <td bgcolor="#CCCCCC" ><label>Documento:</label></td>
  15.         <td bgcolor="#CCCCCC" ><label><input type="text" name="documento" size="10" ></label></td>
  16.         <td bgcolor="#CCCCCC" ><label>Cantidad</label></td>
  17.         <td bgcolor="#CCCCCC" ><label><input type="text" name="cantidad" size="10" ></label></td>
  18.         <!--<td bgcolor="#CCCCCC" ><label>Material</label></td>
  19.        <td bgcolor="#CCCCCC" ><label><input type="text" name="material" size="10" ></label></td>
  20.        <td bgcolor="#CCCCCC" ><label>Tacon</label></td>
  21.        <td bgcolor="#CCCCCC" ><label><input type="text" name="tacon" size="10" ></label></td>-->
  22.        </tr>
  23.            <input type="submit" name="Submit1" value="Grabar" />
  24.   </label>
  25.   <label>
  26.            <input type="submit" name="borrar" value="Cancelar" />
  27.   </label>
  28.   </form>
  29. </div>
  30. <p>    
  31. <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.