Hola a todos los expertos de este sitio, hoy vengo con una duda que no sé dónde me estoy equivocando y recurro a su ayuda para que me iluminen por favor.
Tengo una página donde subo la foto de un artículo, al mismo tiempo hay un botón de submit().
El problema que tengo es que cada vez que recargo la página, el valor de la variable que retiene los valores del archivo de la foto ($tefo1) se restablece a 0 o vacío, cosa que no sucede con las demas ($nucla), lo que necesito es que no importa cuántas veces presione el botón de submit (calcular clave) o el botón de selección de imagen ($_FILE) (porque tiene un onchange=submit() para ver la imagen) quiero conservar el valor de la última vez que se le asignó el valor, ya que al “agregar” la imagen si presióno 2 o mas veces los submits ya no tengo valores para grabar.
Les dejo mi código y agradezco mucho sus ayudas y opiniones, les pido una disculpa por lo poco elegante del código y si hay recomendaciones y mejoras, lo agradeceré infinitamente.
Gracias por su apoyo
código php:
<?php ob_start(); ?>
<!DOCTYPE html>
<?php header('Content-Type: text/html; charset=UTF-8'); ?>
<
<head>
</head>
<body>
<div >
<b> Alta de artículo</b><br>
<?php
error_reporting(0);
echo "<form action='' method='POST' enctype='multipart/form-data'>\n";
@$tefo1=$_POST['tefo1'];
@$arch=$_POST['arch'];
@$nucla=$_POST['nucla'];
@$dirfot="images/fotos/";
@$nofonu=$_FILES['tefo1']['name'];
@$muesfo=$dirfot.$nofonu;
echo '<table>';
echo "<tr><td rowspan=8 width=150><img src=$muesfo width=250 ></td>";
echo "<tr><td><b>Clave: </b><input type='text' name='nucla' size=15 value='$nucla'><input type='submit' name='botcalc' value='Calcula clave'> </td>";
@$nucla=$_POST['nucla'];
if (!isset($tefo1)){$arch=$_FILES['tefo1'];}
else{@$arch=$_POST['arch'];}
echo "<td><b>Seleccionar una foto del artículo </b><input name='tefo1' type='file' onchange='submit()' ></td>";
echo "<tr><td><input type='submit' name='botcam' value='Agregar'> ";
echo " <input type='submit' name='botcam' value='Cancelar'></td>";
echo '</div>';
if (@$_POST['botcam']=='Cancelar'){echo "<script language='JavaScript'>alert(\"Ingreso cancelado.\");window.location.replace(\"index.php\");</script>";}
if (@$_POST['botcam']=='Agregar')
{
@$tefo1=$_POST['tefo1'];
@$nucla=$_POST['nucla'];
@$dirfot="images/fotos/";
@$cand2=0;
@$nofonu=$_FILES['tefo1']['name'];
@$muesfo=$dirfot.$nofonu;
//obten los datos de la foto
$nomarch=$_FILES['tefo1']['name'];
$tiparch=$_FILES['tefo1']['type'];
$tamarch=$_FILES['tefo1']['size'];
$temarch=$_FILES['tefo1']['tmp_name'];
$extarchnvo=end(explode(".", $_FILES['tefo1']['name']));
$cadarchnvo=$nucla.".".$extarchnvo;
//sube la imagen
$add=$dirfot.$cadarchnvo;
if($tefo1load=="true")
{
if(move_uploaded_file ($temarch, $add)){echo "La nueva foto se subio satisfactoriamente.";}
else{echo "Error al subir la foto";}
}
else{$cand2=0;}
}
echo '</tbody>';
echo '</table>';
echo '</div>';
echo '</div>';
echo '</div>';
?>
</body>
</html>
<?php ob_end_flush(); ?>