Ver Mensaje Individual
  #6 (permalink)  
Antiguo 07/06/2005, 12:19
Avatar de lado2mx
lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Intenta con esto:
Código PHP:
<html>
<head>
<title>Agrega/Edita registros</title>
</head>
<body>
<?
global $salarti,$xfecha,$xcodart,$abor,$accion,$wfeold,$w feant,$toma,$tstock;
include(
"conec.php");
$conexion=Conectarse();
$tablax="movimientos";
$Diahora =date("Y-m-d H:i:s");
$abor=$HTTP_GET_VARS['opcion'];
$accion=$HTTP_GET_VARS['accion'];
$tit=explode('+',$abor);
$xfecha=$tit[1];
if (
$abor==""//Altas ya que puede venir de ver1 para editar
{
$result=mysql_query("SELECT * FROM $tablax ",$conexion) or die ("Invalid query");
$wartiold=' ';
$wpromold=' ';
$wcantold=1;
$wfeold=$Diahora;
}else{
$xcodart=substr($abor,0,strpos($abor,'+'));
$result=mysql_query("SELECT * FROM $tablax where (codart='$xcodart' and fecha='$xfecha') ",$conexion) or die ("Invalid query");
$wfeant=$xfecha//fecha

$viene mysql_fetch_array($result);
$wartiold=$viene[0]; //codart
$wpromold=$viene[2]; //
$wcantold=$viene[3]; //
$wstock $viene[4]; //
$wstvirt=$viene[5]; //mstock
}

$result2=mysql_query("SELECT codart,descripcion,stock FROM articulos ",$conexion) or die ("Invalid query");
$rpromo=mysql_query("SELECT * FROM promo",$conexion) or die ("No ingresa a promotor");
$fields mysql_num_fields($result);
$i 0;
$te mysql_field_table($result$i);
?><p><b>FORMULARIO PARA ALTAS-EDICION - Tabla :</b><? echo $tablax?></p><?
if ($toma[3]=="") {
if (
$accion=="") { //altas
$wfeold=$Diahora;
}else{
$wfeold=$wfeant;
}
?><form name='calcform' action='altas.php3' method='Get'>
<table align=center border=2 bordercolor=#0000FF bgcolor=#CCFFCC ><?
for ($i=0;$i<$fields-2;$i++) //aca empiezo asignar a todos los campos
{
$nome[$i] = mysql_field_name ($result$i);
$largo=mysql_field_len($result,$i); ///largo del campo
switch ($i) {
case 
#si el campo codarticulo ?>
<td align=center><? echo strtoupper($nome[$i]); ?></td>
<td align=center>
<input type='text' name='warti' value='<? echo $wartiold?>' size=<? echo $largo?>>
<select name='artsel' onClick='changecontent()'><?
while($salarti mysql_fetch_array($result2))
{
// echo "<option value='$salarti[0]'>$salarti[0]=>$salarti[1] ¦Stock Actuál :$salarti[2]</option>";
?><option value='<? echo $salarti[0].$salarti[2]; ?>'><? echo $salarti[0]=>$salarti[1]; ?> ¦ Stock Actuál :<? echo $salarti[2]; ?></option><?
}
$tstock=$salarti[2];
?></select></td></tr><? 
break ;
case 
//fecha
?> <td align=center><? echo strtoupper($nome[$i]); ?></td>
<td align=center> <input type='text' name=toma[1] value='<? echo $wfeold?>' size=<? echo $largo?>>
</td><br></tr><? 
break;
case 
//promotor
?><td align=center><? echo strtoupper($nome[$i]); ?></td>
<td align=center>
<input type='text' name='wpromo' value='<? echo $wpromold?>' size=<? echo $largo?>>
<select name='prosel' onClick='changepro()'>
<?
while($selpromo mysql_fetch_array($rpromo))
?><option value='<? echo $selpromo[0]; ?>'><? echo $selpromo[0]=>$selpromo[1]; ?></option><? 
}
?></select>
</td><br></tr><? 
break ;
}
}
//////////esto es para el ultimo campo
// $nome[$i] = mysql_field_name ($result, $fields-1);
?><td align=center>CANTIDAD VENDIDA</td>
<td align=center><input type='text' value='<? echo $wcantold?>' onClick='checkvalor()' name='toma[3]' size=<? echo $largo?>></td><br></table><? 

// echo "<td align=center>Nuevo Stock</td>"; no lo muestro
// echo "<td align=center> <input type='text' onChange='changst()' name=toma[4] value='$wstvirt' size=$largo ></td><br></table>";


//echo"<div align='center'>";
?>
<table border='2' align="center"><td align=center>
<input type='hidden' value='<? echo $accion?>' name='accion'>
<input type='hidden' value='<? echo $wfeant?>' name='wfeant'>
<input type='hidden' value='<? echo $salarti[2]; ?>' name='tstock'>
<input type='submit' onClick='novacio();changecontent();checkvalor()' align=center name='xx' value='Grabar'>
<input type=reset name='res'></td>
</table></form>
<? //</div>";


}else{
$oki=insert();
$toma[3]=="";
}

?>
<form action='menuok.php'>
<p align="center"><input type=image src='./imagenes/mppal.jpg' alt='Vuelve al Menu Ppal' name='ixx'></form>
<form method='POST' action='abm.php3'>
<p align="center"><input type='submit' value='Volver' name='inicio'></form>
</Form>


<?

function insert(){
global 
$toma,$Diahora,$conexion,$artsel,$prosel,$salarti$warti,$wfeant,$wfeold,$result,$result2,$wpromo,$x fecha,$xcodart,$abor,$accion;
// strstr ($email, '@'); // devuelve desde que aparece hasta el final
// strpos($artsel,'=') devuelve la posicion en que encuentra el 2do arg
// $newcodi=substr($artsel,0,strpos($artsel,'='));
// $newpromo=substr($prosel,0,strpos($prosel,'='));
//echo"newpromo vale $newpromo";
// $field1 = $newcodi;

$field1 $warti;
$field2 $toma[1];
$field3 $wpromo;
$field4 $toma[3]; //cant vend
while($salarti mysql_fetch_array($result2))
{
if (
$salarti[0]==$field1)
{
$nstock=$salarti[2]-$field4// descuento la cant al stock actual
}
}

if (
$accion=="") { // altas
if ($field2=="") {
$field2date("Y-m-d H:i:s");
}
if(
$field1 == "") {echo "'Codart' es clave no puede estar vacio"; exit;}
mysql_query("Insert into movimientos (codart, fecha,codpromo,cant,mstock) values ('$field1','$field2','$field3','$field4','$nstock' )",$conexion) or die ('No pudo ingresar el Alta');
#comprobamos el resultado de la insercion
# el error CERO significa NO ERROR
# el error 1062 significa Clave duplicada
# en otros errores forzamos a que nos ponga el número de error
# y el significado de ese error (aunque sea en ingles)....
if (mysql_errno($conexion)==0){echo "<h2>Registro AGREGADO</b></H2>";
}else{
if (
mysql_errno($conexion)==1062){echo "<h2>No ha podido añadirse el registro<br>Ya existe un campo con este CODIGO</h2>";
}else{
$numerror=mysql_errno($conexion);
$descrerror=mysql_error($conexion);
echo 
"Se ha producido un error nº $numerror que corresponde a: $descrerror <br>";
}
}
//actualizo stock de articulos
while($salarti mysql_fetch_array($result2))
{
if (
$salarti[0]==$field1) {
$nstock=$salarti[2]-$field4// descuento la cant al stock actual
}
}

mysql_query("update articulos set stock='$nstock' where codart='$field1'" ,$conexion) or die ('No pudo ingresar el Alta');


echo
"<form method='POST' action='altas.php3'><input type=image src='./imagenes/CONTINUA.jpg' alt='Permite dar otro Alta' name='ixx'></form>";
}else{ 
//es EDITAR

$sql=("Update movimientos set codart='$field1',fecha ='$field2' ,codpromo='$field3',cant='$field4' where (codart='$warti' and fecha='$wfeant') ");

//$sql=("update $tablax set Codart=" . (($Codart != "") ? "'$Codart'" : "NULL") . ", Descripcion=" . (($Descripcion != "") ? "'$Descripcion'" : "NULL") . ", stock=" . (($stock != "") ? "'$stock'" : "$stock") . ", cant=" . (($cant != "") ? "'$cant'" : "NULL") . ", fultcpra=" . (($fultcpra != "") ? "'$fultcpra'" : "NULL") . " where Codart='$abor'");
$xresult mysql_query($sql) or die ('No pudo Modificar el registro');

}
}
# cerramos la conexion
mysql_free_result($result);
mysql_close($conexion);

?>

<script language="JavaScript" type="text/javascript">
function changecontent(){
var xxx = document.calcform.artsel.value;
separar=xxx.split('.');
document.calcform.warti.value=separar[0];
document.calcform.tstock.value=separar[1];
}
function changepro(){
document.calcform.wpromo.value=document.calcform.p rosel.value
}
function changst(){
document.calcform.$wstvirt.value=document.calcform .wcantold.value
}

function checkvalor(){
var el = document.calcform.elements;
for (var i = 0 ; i < el.length ; ++i) {
if(el[i].name=='toma[3]') {
var posic=i;
var compro=el[i].value;
}
if(el[i].name=='tstock') {
var tiene=el[i].value;
}
}
if(parseInt(compro)>parseInt(tiene) || compro==0) {
alert('No hay stock disponible,solicitelo al Administrador');
el[posic].value="";
el[posic].focus();
return (false);
}
}

function novacio(){
var el = document.calcform.elements;
for (var i = 0 ; i < el.length ; ++i) {
switch (el[i].name) {
case "warti" :
if(el[i].value==' ') {
alert('No puede estar vacio el campo Articulo');
el[i].focus();
el[5].value="" /////////cantidad
break;}
case "toma[1]" : /////////fecha
if(el[i].value=='') {
alert('No puede estar vacio la Fecha');
el[i].focus();
el[5].value=""
break;}
case "toma[3]" :
if(el[i].value==' ') {
alert('No puede estar vacio la cantidad');
el[i].focus();
break;}
default :
}
}
}
</script>
</body></html>