Foros del Web » Programando para Internet » PHP »

Problema con Array

Estas en el tema de Problema con Array en el foro de PHP en Foros del Web. Hola, quisiera ver si me pueden ayudar en donde esta el error, quiero formar una matriz de captura por medio de array's , donde se ...
  #1 (permalink)  
Antiguo 18/07/2008, 12:33
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años, 7 meses
Puntos: 3
Problema con Array

Hola, quisiera ver si me pueden ayudar en donde esta el error, quiero formar una matriz de captura por medio de array's , donde se va a capturar una cantidad, descripcion, precio unitario y total, ahorita el primer elemento del array si lo esta recogiendo pero al capturar el segundo elemento borra la matriz, no se porque ?
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Sistema Integral..Formato de requisicion</title>
<style type="text/css">
<!--
body {
	background-color: #FFFFD2;
}
.Estilo2 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: bold;
}
.Estilo4 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #0000FF; }
.Estilo6 {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #FF0000;
}
.Estilo7 {color: #006633}
.Estilo8 {
	font-size: 10px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
}
.Estilo9 {
	color: #006633;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 10px;
}
-->
</style>
</head>
<script>
function tabular(e,obj) {
  tecla=(document.all) ? e.keyCode : e.which;
  if(tecla!=13) return;
  frm=obj.form;
  for(i=0;i<frm.elements.length;i++) 
    if(frm.elements[i]==obj) { 
      if (i==frm.elements.length-1) i=-1;
      break }
  frm.elements[i+1].focus();
  return false;
}
</script> 

<body>
<?php
putenv('TZ=America/Monterrey');
$hoy= date('M j Y');
function array_recibe($url_array) {
     $tmp = stripslashes($url_array);
     $tmp = urldecode($tmp);
     $tmp = unserialize($tmp);
    return $tmp; 
}                  
$sw=$_GET['sw'];
$par=$_POST['par'];
$can=$_POST['can'];
$dsc=$_POST['dsc'];
$pun=$_POST['pun'];
$tot=$_POST['tot'];
if($sw == '')
{
  $par=array();
  $can=array();
  $dsc=array();
  $puni=array();
  $tot=array();
 }
//    echo"<link rel=\"StyleSheet\" href=\"../css/styles.css\" type=\"text/css\">";
echo"<table width=\"750\" border=\"0\" align=\"center\">"
  . " <tr>"
  . "   <td width=\"111\" rowspan=\"2\"><div align=\"center\"><img src=\"../images/logo.png\"  /></div></td>"
  . "   <td width=\"422\" rowspan=\"2\"><div align=\"center\"><span class=\"Estilo2\">Requisicion de Compra</span></div></td>"
  . "   <td width=\"109\"><span class=\"Estilo4\">Fecha Requisicion</span></td>"
  . "   <td width=\"90\" class=\"Estilo6\">$hoy </td>"
  . " </tr>"
  . " <tr>"
  . "   <td valign=\"middle\" class=\"Estilo4\">&nbsp;</td>"
  . " </tr>"
  . " <tr>"
  . "   <td colspan=\"4\"><table width=\"730\" border=\"0\" align=\"center\" bgcolor=\"#FFFF9F\">"
  . "     <tr>"
  . "       <td width=\"86\" class=\"Estilo6\">Departamento</td>"
  . "       <td width=\"163\"><input name=\"fsur3\" type=\"text\" id=\"fsur3\" size=\"20\" maxlength=\"10\" /></td>"
  . "       <td width=\"85\" class=\"Estilo6\">Quien Solicita</td>"
  . "       <td width=\"207\"><input name=\"fsur2\" type=\"text\" id=\"fsur2\" size=\"30\" maxlength=\"10\" /></td>"
  . "       <td width=\"81\"><span class=\"Estilo6\">Fecha a Surtir</span></td>"
  . "       <td width=\"82\"><input name=\"fsur\" type=\"text\" id=\"fsur\" size=\"10\" maxlength=\"10\" /></td>"
  . "     </tr>"
  . "     <tr>"
  . "       <td colspan=\"6\"><fieldset> <legend>Partidas de la Requisicion</>"
."<form method=\"POST\" action=\"$php_self?par=$par[$i]&can=$can&dsc=$dsc&pun=$pun&tot=$tot&sw=1\" >"
  ." <table width=\"500\" border=\"0\" align=\"center\">"
  . "         <tr bgcolor=\"#CCCCCC\">"
  . "           <td width=\"22\"><div align=\"center\" class=\"Estilo9\">Partida</div></td>"
  . "           <td width=\"21\"><div align=\"center\" class=\"Estilo9\">Cant</div></td>"
  . "           <td width=\"205\" class=\"Estilo9\">Descripcion </td>"
  . "           <td width=\"115\"><div align=\"center\" class=\"Estilo9\">Precio Unitario</div></td>"
  . "           <td width=\"119\"><div align=\"center\" class=\"Estilo9\">Total</div></td>"
  . "         </tr>"
  . "         <tr class=\"Estilo9\">";
$i=0;
while ( $par[$i] <> 0) {
  echo "           <td>$par[$i]</td>"
  . "           <td>$can[$i]</td>"
  . "           <td>$dsc[$i]</td>"
  . "           <td>$pun[$i]</td>"
  . "           <td>$tot[$i]</td><br></tr>";
  $i++; echo $i;
}
  echo "           <td><input value=\"$par[$i]\" onkeypress=\"return tabular(event,this)\" name=\"par[$i]\" type=\"text\" id=\"fsur4\" size=\"6\" maxlength=\"10\" /></td>"
  . "           <td><input value=\"$can[$i]\" onkeypress=\"return tabular(event,this)\" name=\"can[$i]\" type=\"text\" id=\"fsur4\" size=\"6\" maxlength=\"10\" /></td>"
  . "           <td><input value=\"$dsc[$i]\" onkeypress=\"return tabular(event,this)\" name=\"dsc[$i]\" type=\"text\" id=\"fsur5\" size=\"50\" maxlength=\"10\" /></td>"
  . "           <td><input value=\"$pun[$i]\" onkeypress=\"return tabular(event,this)\" name=\"pun[$i]\" type=\"text\" id=\"fsur6\" size=\"11\" maxlength=\"10\" /></td>"
  . "           <td><input value=\"$tot[$i]\" onkeypress=\"return tabular(event,this)\" name=\"tot[$i]\" type=\"text\" id=\"fsur7\" size=\"11\" maxlength=\"10\" /></td>"
  . "        </fieldset> "
  . "       </tr></table><input type=\"submit\" name=\"Submit\" value=\"Enviar\" />"
  ."         <td align=\"center\">      </td>"
  . "    </td> </tr>"
  . "     <tr>"
  . "       <td colspan=\"6\">&nbsp;</td>"
  . "     </tr>"
  . "   </table></td>"
  . " </tr>"
  . " <tr>"
  . "   <td colspan=\"4\"><table width=\"112\" border=\"0\" align=\"center\" bgcolor=\"#ffffd2\">"
  . "     <tr>"
  . "       <td width=\"25\"><img src=\"../images/regresar.png\"  /></td>"
  . "       <td width=\"53\">&nbsp;</td>"
  . "       <td width=\"20\"><div align=\"center\"><img src=\"../images/guardar.png\" width=\"20\" height=\"20\" /></div></td>"
  . "     </tr>"
  . "   </table></td>"
  . " </tr>"
  . "</table>";

?>
</body>
</html>
ver ejemplo www.contamax.com/menu/solcot.php

Gracias por la ayuda que me puedan brindar.
  #2 (permalink)  
Antiguo 18/07/2008, 15:21
Avatar de tulises16  
Fecha de Ingreso: diciembre-2003
Ubicación: La Plata, Argentina
Mensajes: 92
Antigüedad: 20 años, 11 meses
Puntos: 1
Respuesta: Problema con Array

En prinicipio y leyendo "por arriba" el codigo estas declarando todo el tiempo los arrays con lo que borra el contenido anterior, de todas formas me parece que deberias usar una variable de sesion para almacenar los datos hasta que (supongo) los guardes en una base de datos
__________________
Ulises
  #3 (permalink)  
Antiguo 18/07/2008, 15:44
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años, 7 meses
Puntos: 3
Respuesta: Problema con Array

si los voy a grabar en una base de datos, pero lo que necesito es que las partidas que se van a grabar en la matriz las vaya almacenando en la misma matriz y cuando ya no se vayan a capturar mas partidas, toda lka matriz se descargue en una base de datos
  #4 (permalink)  
Antiguo 18/07/2008, 17:26
 
Fecha de Ingreso: noviembre-2007
Ubicación: Lanus, Buenos Aires
Mensajes: 178
Antigüedad: 17 años
Puntos: 14
Respuesta: Problema con Array

si entiendo bien lo que quieres hacer, pretendes que el contenido de la matriz no se pierda al recargar la pagina no?? es por eso que pierdes los datos :)

o guardas el array en sesion o preparas de una sola vez todas las partidas y las insertas o vas insertando una por una :)
  #5 (permalink)  
Antiguo 18/07/2008, 19:12
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años, 7 meses
Puntos: 3
Respuesta: Problema con Array

exactamente my friend, eso es lo que kiero hacer pero se me hace que me voy por la mas facil o sea grabar en una tabla cada registro de la partida, leerla cuando se recargue la pagina, desplegarla y volver a pedir otra partida. en caso de que no pueda mantener los datos delntro del array al recargar la pagina,

Saludos, y gracias a los 2 por sus comentarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:08.