Ver Mensaje Individual
  #11 (permalink)  
Antiguo 01/10/2012, 09:02
charly163
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Ordenar, acumular y guardar en la bd ordenados!!!

Probe la solucion propuesta x NSD, pero no guarda los datos en la tabla preliminar y no encuentro el error, aca esta el codigo de pasajes.preliminar.carga.php

Código:
<script type="text/javascript" src="calcula.js"> </script><!-- va calculando los montos -->
<script type="text/javascript" src="ordena.js"> </script><!-- va calculando los montos -->

  <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <script type="text/javascript">

        var Aux1 = 0;

        function AgregarCampos(ID,VAL){

            Aux1++;

            campo = '<input type="hidden" id="'+ID+'"  name="'+ID+'"  value="'+VAL+'" />';

            $("#orden").append(campo);

        }

        function Existe(IDC) {

            if(IDC=='' || IDC==undefined || IDC==NaN || IDC==null) {

                return false;

            } else {

                return true;

        }   }

        function Ordenoo() {

            var Campos = new Array();

            $("#distribucion tr").each(function (Aux2) {

                $(this).children("td").each(function (Aux3) {

                    switch (Aux3) {

                        case 0:

                            Aux4 = $(this).text();

                            if(!Existe(Campos[Aux4])){ Campos[Aux4] = 0; }

                        break;

                        case 1:

                            Campos[Aux4] = parseFloat(Campos[Aux4])+parseFloat($(this).text());

                        break;

                    }

                });

            });

            for(var Aux5 in Campos){

                AgregarCampos(Aux5,Campos[Aux5]);

            }

            $("#orden").submit();

        }

    </script>




<?php include("menu.php"); ?>
</head>

<?php
//$cone=mysql_connect("localhost","charly163","charly") or die("mal la conexion");
//mysql_select_db("prueba",$cone) or die("mal la base");
//$cons=mysql_query("select idprograma,programa from programa");
?>

<body>
    <a id="top-of-page"></a>
    <div id="wrap" class="clearfix">
    <br />
<!--Aca pongo la fecha-->
<div id="fecha">
  <?php $d=date("w");
  $l=date("d/m/Y"); 
  switch ($d)
  {
  case 1:
  echo "Hoy es Lunes, ".$l; 
  break;
  case 2:
  echo "Hoy es Martes, ".$l;
  break; 
  case 3:
  echo "Hoy es Miercoles, ".$l;
  break; 
  case 4:
  echo "Hoy es Jueves, ".$l;
  break; 
  case 5:
  echo "Hoy es Viernes, ".$l;
  break; 
  case 6:
  echo "Hoy es Sabado, ".$l;
  break; 
  case 0:
  echo "Hoy es Domingo, ".$l;
  break; 
  } 
?>
</div>
<!--Aca termina la fecha-->



<!-- Concatena el expte.Ojo que para que haga lo siguiente tengo que cambiar el tipo de campo "expediente"
de la base contable a varchar(30) y no Int como esta ahora y ademas modificar las 
relaciones de las tablas de esa base y quitar la tabla intermedia prog-part y dejarlo
como esta la base "PRUEBA"
 -->


<!--Aca va la busqueda del expediente-->


<div align="center">
Expediente 
<input class="col_1" onkeypress="return handleEnter(this, event)" value="<?php $caract; ?>" name="caract" type="text">

-<input class="col_1" onkeypress="return handleEnter(this, event)" value="<?php $num; ?>" name="num" type="text">

/ <input class="col_1" onkeypress="return handleEnter(this, event)" value="<?php $anio; ?>" name="anio" type="text">

-<input class="col_1" onkeypress="return handleEnter(this, event)" value="<?php $alc; ?>" name="alc" type="text">
</div>


<hr class="alt1">

<div style="text-align: center;">
  
<table id="tablaUsuarios" border="2" name="tablaprog" >
<tbody><tr style="text-align: center;" id="fila">
	<td style="width: 268px; text-align: center;">Programa</td>
	<td style="width: 331px; text-align: center;">Monto</td>
	<td style="width: 338px; text-align: center;">Acciones</td>
</tr>
<tr>
	<td style="width: 268px; text-align: left;">	<!--aca va el select inteligente-->
    
	<select class="fancy" name="programa" id="sel">
<?php 
//$cone=mysql_connect("localhost","charly163","charly") or die("mal la conexion");
//mysql_select_db("prueba",$cone) or die("mal la base");
include_once('cone.php');
Conectate();
$cons=mysql_query("select idprograma,programa from programa");
while($r=mysql_fetch_array($cons))
{
  echo "<option class='fancy' value='$r[programa]'>$r[idprograma] | $r[programa]</option>";  
}
?>
	</select></td>
	<td style="width: 331px; text-align: center;"><input id="text1" name="montos" type="text"></td>
	<td style="width: 338px;">
		<input class="small orange" onclick="calcula()" value="Calcula" type="button">
				
			<input class="small pink" onclick="ordena()" value="Graba" type="button">
		<a class="button pop" href="#ABAJO">Abajo</a>
	</td>
</tr>
</tbody></table>
</div>
<!--</form>-->

<!-- HR.alt2 -->
<hr class="alt2">
<!-- /HR.alt2 -->

<!-- Tabla para mostrar monto de la preliminar -->
<table>
<tbody><tr>
	<td style="width: 388px; text-align: right;"><span style="font-weight: bold;">MONTO TOTAL</span><br> </td>
	<td style="width: 155px; text-align: center; font-weight: bold;" id="aca"><br></td>
	<th style="width: 390px;">MONTO TOTAL<br></th>
       </tr>
</tbody>
</table>
<!-- /Tabla para mostrar monto de la preliminar -->


<!-- HR.alt1 -->
<hr class="alt1">

  
  <!-- Pestañas con distribucion y mas opciones -->
<ul class="tabs center">
<li><a href="#tabc1">Resultado de la distribucion</a></li>
<li><a href="#tabc2">Realizar Minuta</a></li>
<li><a href="#tabc3">Realizar OP</a></li>
</ul>

<div id="tabc1" class="tab-content">
<form action="ordena.php" method="post" id="orden">	
   <table class="sortable" id="distribucion">
     <thead>
        <tr><th>PROGRAMA</th> <th>MONTO</th><th>ACCIONES</th></tr>
     </thead>
    <tbody>
      <!--  <tr id="linea"><td id="destino"></td><td id="plata"></td><td></td></tr>
        <tr><td>Joshua</td>	<td>4325.63</td>	<td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>
        <tr><td>Peter</td><td>5698.44</td>	<td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>
        <tr><td>Mary</td><td>7654.82</td><td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>
        <tr><td>Gretty</td><td>6732.85</td><td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>-->
     </tbody>
       </table>
    </form>
</div>
<div id="tabc2" class="tab-content">Tab2 has an icon.</div>
<div id="tabc3" class="tab-content">Tab3</div>  


</div>
aca esta el script que agrega lineas a la tabla en forma dinamica
Código:
var m1=0;
var orden=1;
var monto=0;
var pro=0;
var caras=0;
var expes=0;
var anios=0;

function calcula()
{
    	//aca empieza a chequear si el expte lo puso bien
	caras=caract.value;
	expes=num.value;
	anios=anio.value;
    
        	
	if( caras == null || caras.length == 0 )
       {alert("FALTA LA CARACTERISTICA DEL EXPEDIENTE");}
	if( expes == null || expes.length == 0 )
       {alert("FALTA EL EXPEDIENTE");}	
	if( anios == null || anios.length == 0 )
      {alert("FALTA EL AÑO DEL EXPEDIENTE");}   
 	if (anios.length !=4)
	{
		alert("EL AÑO DEBE TENER 4 DIGITOS");
		anio.value="";
	} 
	//aca termina de chequear si el expte lo puso bien
    
monto=montos.value;//guardo el valor del input
//monto=monto.toFixed(2);
if (isNaN(monto))
{ 
 alert("NO ES UN NUMERO");
 montos.value="";//lo borro
 exit;
}
if( monto == null || monto.length == 0)
{
    alert("CAMPO VACIO");
    montos.value="";//lo borro
 exit;
}




monto=parseFloat(monto);//lo parseo
 m1=parseFloat(m1);//parseo el acumulador
m1=m1+monto;//voy acumulando el input del monto
m1=m1.toFixed(2);
montos.value="";//lo borro
pro=programa.options[programa.selectedIndex].value;//guardo el valor de los seleccionado en el select
document.getElementById('aca').innerHTML = m1;//guardo en la etiqueta "aca" el valor del acumulador



var linea=document.getElementById('distribucion');//guardo la referncia de la linea
var ultima=linea.rows.length;//obtengo la cantidad de celdas de la fila
var row=linea.insertRow(ultima);//inserto 1 fila 

var celda1=row.insertCell(0);//inserto 1 fila
var celda2=row.insertCell(1);//inserto 1 fila
var celda3=row.insertCell(2);//inserto 1 fila

celda1.innerHTML=pro;//pongo el destino en la celda
celda2.innerHTML=monto;//pongo el monto en la celda
celda3.innerHTML="<input class='medium green' type='button' value='Eliminar' onclick='eliminarUsuario(this)'>";//pongo el boton eliminar

//aca obtengo el id de cada una de los programas creados dinamicamente
celda1.id=orden;
var g=celda1.id;
celda2.id=orden;

orden++;
return false;
}

function eliminarUsuario(obj)
{
var oTr = obj;
while(oTr.nodeName.toLowerCase()!='tr')
{
oTr=oTr.parentNode;
}
var d=oTr.childNodes[1].innerHTML;
var root = oTr.parentNode;
root.removeChild(oTr);
m1=m1-d;
m1=m1.toFixed(2);
document.getElementById('aca').innerHTML = m1;
}
y aca el php que conecta a la bd, pero que no veo que grabe en la tabla
Código:
<?php
 $link=mysql_connect("localhost","charly163","charly") or die("no se conecto");
 mysql_select_db("prueba",$link) or die("No encontro la base");
 foreach ($_POST as $clave => $valor){
 mysql_query("INSERT INTO preliminar VALUES('$clave','$valor');") or die("NO SE GRABO EN LA BASE"); 
 }
 echo "ESPECTACULAR";
 mysql_close();
 ?>

MIL GRACIAS X LAS MOLESTIAS!!