Estoy teniendo una incognita, de que manera puedo manejar una publicacion de imagen al editar un registro de la BD.
Le explico, realice un sitio web de catalogo para un cliente, ya esta terminado y funcionando:
[url=http://test.meqcer.com/][/url]
Internamente tienen un sistema ADMIN, donde publican los equipos, actualmente al editar un item de catalogo me arroja todos los datos vean
Como veran en la imagen enmarcada con colo rojo, no se como hacerle para que me muestra la imagen que este cargada y al momento de guardar cambios no borre a imagen, porque como no estoy adjuntando nada se actualiza con campo vacio, y para que se mantenga la imagen arriba de la web tengo que volver a cargar la misma imagen.
La idea segun tengo pensada es que si no adjunto que no me haga nada pero si adjunto que me reemplace la imagen.
Espero me puedan dar una idea o solucion para esto.
Les muestro el codigo de editar.php para que visualicen como lo tengo estructurado.
Código PHP :
<?php if(isset($_POST['submit'])){ include('conexion.php'); $conexion = ConectarseBD(); //varibles para traer la informacion que se actualizara en la tabla // Generales $id = $_POST['id']; //varibles para traer la informacion que se insertara en la tabla // Generales $name_maquinary = $_POST['name_maquinary']; $descripcion = $_POST['descriptions']; //Otras propiedades $categoria = $_POST['category']; $marca = $_POST['mark']; $modelo = $_POST['model']; $ano = $_POST['year']; $serie = $_POST['series']; $economico = $_POST['economic']; $video = $_POST['video']; $fichatecnica = $_POST['datasheet']; $proveedor = $_POST['supplier']; $precio = $_POST['price']; $home = $_POST['promo']; //Datos de creacion $cretion_by = "Usuario_prueba"; $creation_date = date ("Y-m-d"); $last_update_by = "Usuario_prueba"; $last_update_date = date ("Y-m-d"); //se encarga de subir el archivo de la imagen a la carpeta FILES en el servidor if (is_uploaded_file ($_FILES['anexo']['tmp_name'])) { $directorio_entrada = 'files/'; // directorio dense alojaran las imagenes $nombre_fichero = $_FILES['anexo']['name']; $nombre_fichero2 = $_FILES['anexo2']['name']; //nombre original del archivo $nombre_fichero3 = $_FILES['anexo3']['name']; //nombre original del archivo $nombre_fichero4 = $_FILES['anexo4']['name']; //nombre original del archivo $nombre_fichero5 = $_FILES['anexo5']['name']; //nombre original del archivo $nombre_fichero6 = $_FILES['anexo6']['name']; //nombre original del archivo $unico = date("d-m-Y"); //asignarle un nombre unico al archivo $nombre_archivo = $unico . "-" . $nombre_fichero; $nombre_archivo1 = $unico . "-" . $nombre_fichero1; $nombre_archivo2 = $unico . "-" . $nombre_fichero2; $nombre_archivo3 = $unico . "-" . $nombre_fichero3; $nombre_archivo4 = $unico . "-" . $nombre_fichero4; $nombre_archivo5 = $unico . "-" . $nombre_fichero5; $nombre_archivo6 = $unico . "-" . $nombre_fichero6; $nuevo_directorio = $directorio_entrada.$nombre_archivo; $nuevo_directorio2 = $directorio_entrada.$nombre_archivo2; $nuevo_directorio3 = $directorio_entrada.$nombre_archivo3; $nuevo_directorio4 = $directorio_entrada.$nombre_archivo4; $nuevo_directorio5 = $directorio_entrada.$nombre_archivo5; $nuevo_directorio6 = $directorio_entrada.$nombre_archivo6; //mover el archivo al direcorio FILES move_uploaded_file ($_FILES['anexo']['tmp_name'],$directorio_entrada . $nombre_archivo); // esta direccion se insertara en la tabla move_uploaded_file ($_FILES['anexo2']['tmp_name'],$directorio_entrada . $nombre_archivo2); move_uploaded_file ($_FILES['anexo3']['tmp_name'],$directorio_entrada . $nombre_archivo3); move_uploaded_file ($_FILES['anexo4']['tmp_name'],$directorio_entrada . $nombre_archivo4); move_uploaded_file ($_FILES['anexo5']['tmp_name'],$directorio_entrada . $nombre_archivo5); move_uploaded_file ($_FILES['anexo6']['tmp_name'],$directorio_entrada . $nombre_archivo6); //echo("Se subio correctamente las imagenes "); } //acutalizar la informacion el la tabla $query = ("UPDATE `inventory_machinery` SET `name_maqui` = '$name_maquinary', `site` = '$proveedor', `inv` = '', `mark` = '$marca', `model` = '$modelo', `num_set` = '$serie', `description` = '$descripcion', `years` = '$ano', `dlls` = '$precio', `economic_number` = '$economico', `Datasheet` = '$fichatecnica', `home` = '$home', `category` = '$categoria', `picture_1` = '$nuevo_directorio', `picture_2` = '$nuevo_directorio2', `picture_3` = '$nuevo_directorio3', `picture_4` = '$nuevo_directorio4', `picture_5` = '$nuevo_directorio5', `picture_6` = '$nuevo_directorio6', `video_1` = '$video', `creation_by` = '$cretion_by', `creation_date` = '$creation_date', `last_update_by` = '$last_update_by', `last_update_date` = '$last_update_date' WHERE `id_maquina` =$id"); mysql_query($query) or die(mysql_error()); echo "<script> window.alert('Actualizacion exitosa!!'); location.href='index.php';</script>"; } else { if(isset($_GET['id'])){ include('conexion.php'); $conexion = ConectarseBD(); $sql = "SELECT * FROM inventory_machinery where id_maquina=". $_GET['id'] .""; $cliente = mysql_query($sql) or die ('Error de tabla'); ?> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Editar Item</title> <!-- Stylus --> <link href="../../css/style_meqcer.css" rel="stylesheet" type="text/css" /> <link rel="shortcut icon" href="../../img/favicon.ico"> <!-- Media --> <script type="text/javascript" src="../../media/jquery.js" ></script> <script type="text/javascript" src="../../media/tooltip.jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $('.tooltip').tooltip(); }); </script> <script language="javascript" type="text/javascript" src="niceforms.js"></script> <link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" /> <script type="text/javascript" src="../../media/validar.js"></script> </head> <body> <div id="site"> <div id="site-interior"> <div id="header"> <div class="col-1"> <div class="logo"><a href="<?= $DOMAIN_URL?>"><img src="../../img/logo.jpg" width="275" height="99"></a></div> </div> <div class="col-1r"> <div align="right" class="user"> <img src="../../img/user_business_32.png" width="32" height="32"> <?php //Imprime la variable de sesion o usuario cuanto este este logueado, $_SESSION['user'] ?> <?php if (isset($_SESSION['k_email'])) { echo '<a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/logout.php">{Salir '.$_SESSION['k_email'].'}</a>'; } ?> </div> <p id="blurb-title">CMS Catálogo</p> </div> <div class="clear"></div> <p align="right"><a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/registrar.php">Usuarios</a> <a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/catalog/index.php">Catálogo</a> <a style="color:#000;" href="http://www.wconexion.com.mx/meqcer/admin/newslletter/index.php">Boletín Electrónico</a></p> </div> <div class="clear"></div> <div id="menu-nav" style="padding-top:10px; padding-right:15px; color:#FFF;" align="right"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td width="40"><a href="http://www.wconexion.com.mx/meqcer/admin/index.php" id="Ir a inicio" class="tooltip"><img src="../../img/home_back_32.png" width="32" height="32"></a></td> </tr> </table> </div> <div class="clear"></div> <div align="right" style="padding-top:3px;"><img src="../../img/cintilla.jpg" width="398" height="2"></div> <div style="margin-top:15px;" id="wrapper"> <div class="inventario"> <p id="blurb">Editar productos</p> <div class="clear"></div> <p>Favor de llenar los campos requeridos con (*)</p> <p> </p> <?php while ($row = mysql_fetch_assoc($cliente)) {?> <form onSubmit="return checkcontact();" id="form" name="form" method="post" action="editar.php" enctype="multipart/form-data" class="niceform"> <div class="col-1"> <div style="margin-left:60px; width:306px; height:150px; padding:40px 10px 10px 10px; background-image:url(../../img/box_form_gral.jpg); background-repeat:no-repeat;"> <dl> <dt><label for="name">*Nombre:</label></dt> <dd><input name="id" value="<?php echo $row['id_maquina']?>" type="hidden" /><input type="text" name="name_maquinary" id="name" size="32" value="<?php echo $row['name_maqui']?>" style="text-transform:uppercase;" onkeyup="javascript:this.value=this.value.toUpperCase();" /></dd> </dl><br><br> <dl> <dt><label for="descriptions">*Descripción:</label></dt> <dd><textarea name="descriptions" id="descriptions" rows="3" cols="40" style="text-transform:uppercase;" onkeyup="javascript:this.value=this.value.toUpperCase();" ><?php echo $row['description']?></textarea></dd> </dl> <div align="right" style="padding:5px 5px 0 0;"><input type="submit" name="submit" id="submit" value="Guardar Cambios" /></div> </div> <div style="margin-left:60px; margin-top:8px; width:306px; height:232px; padding:50px 10px 10px 10px; background-image:url(../../img/box_form_anexos.jpg); background-repeat:no-repeat;" align="left"> <table cellpadding="0" cellspacing="0" border="0" width="300"> <tr> <td><img src="<?php echo $row['picture_1']?>" width="30" height="30"></td> <td><input type="file" name="anexo" /></td> </tr> <tr> <td><img src="<?php echo $row['picture_2']?>" width="30" height="30"></td> <td><input type="file" name="anexo2" /></td> </tr> <tr> <td><img src="<?php echo $row['picture_3']?>" width="30" height="30"></td> <td><input type="file" name="anexo3" /></td> </tr> <tr> <td><img src="<?php echo $row['picture_4']?>" width="30" height="30"></td> <td><input type="file" name="anexo4" /></td> </tr> <tr> <td><img src="<?php echo $row['picture_5']?>" width="30" height="30"></td> <td><input type="file" name="anexo5" /></td> </tr> <tr> <td><img src="<?php echo $row['picture_6']?>" width="30" height="30"></td> <td><input type="file" name="anexo6" /></td> </tr> </table> </div> </div> <div class="col-2r"> <div style="margin-right:60px; width:407px; height:490px; padding:50px 10px 10px 10px; background-image:url(../../img/box_form_others.jpg); background-repeat:no-repeat;"> <dl> <dt><label for="category">Categoría:</label></dt> <dd><select size="1" name="category"> <option value="47" <? if ($row['category']=="47") { echo " selected";}?>> AMBULANCIAS</option> <option value="72" <? if ($row['category']=="72") { echo " selected";}?>> AUTOBÚS PARA DISCAPACITADOS</option> <option value="14" <? if ($row['category']=="14") { echo " selected";}?>> BARREDORAS DE CARRETERA</option> <option value="70" <? if ($row['category']=="70") { echo " selected";}?>> BARREDORAS INDUSTRIALES</option> <option value="37"<? if ($row['category']=="37") { echo " selected";}?>> BARREDORAS PARA CIUDAD</option> <option value="51" <? if ($row['category']=="51") { echo " selected";}?>> CAMAS BAJAS (LOWBOY S) (PLATAFORMAS) <option value="76"<? if ($row['category']=="76") { echo " selected";}?>> CAMION DE ORQUESTA</option> <option value="7" <? if ($row['category']=="7") { echo " selected";}?>> CAMION RECOLECTOR( PARA BASURA )</option> <option value="41" <? if ($row['category']=="41") { echo " selected";}?>> CAMIONES (PIPA S) FUERA DE CARRETERA</option> <option value="3" <? if ($row['category']=="3") { echo " selected";}?>> CAMIONES CANASTILLA</option> <option value="42"<? if ($row['category']=="42") { echo " selected";}?>> CAMIONES DISTRIBUIDOR DE AGUA ( PIPA S )</option> <option value="38" <? if ($row['category']=="38") { echo " selected";}?>> CAMIONES FUERA DE CARRETERA ( YUCKLE S )</option> <option value="73" <? if ($row['category']=="73") { echo " selected";}?>> CAMIONES PARA BOMBEROS</option> <option value="29" <? if ($row['category']=="29") { echo " selected";}?>> CARGADORES SOBRE LLANTAS (PAYLOADER'S)</option> <option value="28" <? if ($row['category']=="28") { echo " selected";}?>> CARGADORES SOBRE ORUGA (TRAXCAVOS)</option> <option value="65" <? if ($row['category']=="65") { echo " selected";}?>> COMPACTADORES COMBINADOS</option> <option value="44" <? if ($row['category']=="44") { echo " selected";}?>> COMPACTADORES LISOS ESTATICOS (PLANCHAS)v <option value="19" <? if ($row['category']=="19") { echo " selected";}?>> COMPACTADORES NEUMATICOS</option> <option value="18" <? if ($row['category']=="18") { echo " selected";}?>> COMPACTADORES PARA BASURA</option> <option value="17"<? if ($row['category']=="17") { echo " selected";}?> > COMPACTADORES PARA SUELOS</option> <option value="43" <? if ($row['category']=="43") { echo " selected";}?>> COMPACTADORES VIBRATORIOS LISOS</option> <option value="15" <? if ($row['category']=="15") { echo " selected";}?>> COMPACTADORES VIBRATORIOS LISOS(DOBLE TAMBOR)</option> <option value="16"<? if ($row['category']=="16") { echo " selected";}?>> COMPACTADORES VIBRATORIOS PATA DE CABRA</option> <option value="20" <? if ($row['category']=="20") { echo " selected";}?>> COMPRESORES DE AIRE (PORTATILES)</option> <option value="39" <? if ($row['category']=="39") { echo " selected";}?>> DISTRIBUIDORAS DE ASFALTO ( PETROLIZADORAS )</option> <option value="2" <? if ($row['category']=="2") { echo " selected";}?>> ELEVADORES DE MEZCLA ASFALTICA ( DE TIRON)</option> <option value="27" <? if ($row['category']=="27") { echo " selected";}?>> ELEVADORES DE PERSONAS</option> <option value="5" <? if ($row['category']=="5") { echo " selected";}?>> EQUIPO CANASTILLA PARA MONTARSE EN CAMION</option> <option value="68" <? if ($row['category']=="68") { echo " selected";}?>> EQUIPO DE MOLINO PARA PIEDRA</option> <option value="45" <? if ($row['category']=="45") { echo " selected";}?>> EQUIPO DE TRITURACION Y CRIVADO</option> <option value="50" <? if ($row['category']=="50") { echo " selected";}?>> EQUIPO ORQUESTA PARA MONTARSE EN CAMION</option> <option value="74" <? if ($row['category']=="74") { echo " selected";}?>> EQUIPO PARA DRENAJE</option> <option value="75" <? if ($row['category']=="75") { echo " selected";}?>> EQUIPO PINTARAYAS</option> <option value="48" <? if ($row['category']=="48") { echo " selected";}?>> EQUIPOS PARA ASFALTOS ( USADOS )</option> <option value="46" <? if ($row['category']=="46") { echo " selected";}?>> EQUIPOS PARA MONTARSE EN CAMION P/BASURA</option> <option value="13" <? if ($row['category']=="13") { echo " selected";}?>> ESPARCIDORA DE SELLO</option> <option value="12" <? if ($row['category']=="12") { echo " selected";}?>> ESPARCIDORAS DE ASFALTO (PAVIMENTADORAS)(FINISHER)</option> <option value="34" <? if ($row['category']=="34") { echo " selected";}?>> ESTABILIZADORA DE SUELO</option> <option value="32" <? if ($row['category']=="32") { echo " selected";}?>> EXCAVADORAS HIDRAULICAS</option> <option value="25" <? if ($row['category']=="25") { echo " selected";}?>> GENERADORES</option> <option value="63" <? if ($row['category']=="63") { echo " selected";}?>> GRUAS CABINA FIJA</option> <option value="77" <? if ($row['category']=="77") { echo " selected";}?>> GRÚAS PARA MONTARSE EN CAMION</option> <option value="62"<? if ($row['category']=="62") { echo " selected";}?>> GRUAS TODO TERRENO</option> <option value="67" <? if ($row['category']=="67") { echo " selected";}?>> GUARNICIONES PARA CONCRETO</option> <option value="21" <? if ($row['category']=="21") { echo " selected";}?>> LOWBOY S DE CUELLO DESMONTABLE (STANDARD)</option> <option value="4" <? if ($row['category']=="4") { echo " selected";}?>> MARTILLOS HIDRAULICOS</option> <option value="22" <? if ($row['category']=="22") { echo " selected";}?>> MARTILLOS HIDRAULICOS "IRON HAMMER"</option> <option value="78" <? if ($row['category']=="78") { echo " selected";}?>> MICELANEOS Y ACCESORIOS</option> <option value="59" <? if ($row['category']=="59") { echo " selected";}?>> MINICARGADORES</option> <option value="49" <? if ($row['category']=="49") { echo " selected";}?>> MONTACARGAS</option> <option value="71" <? if ($row['category']=="71") { echo " selected";}?>> MONTAJE PARA RECOLECTORA</option> <option value="31" <? if ($row['category']=="31") { echo " selected";}?>> MOTOCONFORMADORAS (NIVELADORAS)</option> <option value="61" <? if ($row['category']=="61") { echo " selected";}?>> MOTOESCREPAS</option> <option value="26" <? if ($row['category']=="26") { echo " selected";}?>> OFICINAS MOVILES</option> <option value="33" <? if ($row['category']=="33") { echo " selected";}?>> PERFILADORA DE ASFALTO ( FRESADORA )</option> <option value="64" <? if ($row['category']=="64") { echo " selected";}?>> PIPAS DE AGUA</option> <option value="24" <? if ($row['category']=="24") { echo " selected";}?>> PLANTA DE ASFALTO LINEA SPL110</option> <option value="54" <? if ($row['category']=="54") { echo " selected";}?>> PLANTA DE ASFALTO LINEA SPL160</option> <option value="55" <? if ($row['category']=="55") { echo " selected";}?> > PLANTA DE ASFALTO LINEA SPL30</option> <option value="56" <? if ($row['category']=="56") { echo " selected";}?>> PLANTA DE ASFALTO LINEA SPL60</option> <option value="1" <? if ($row['category']=="1") { echo " selected";}?>> PUNTAS PARA MARTILLO</option> <option value="35" <? if ($row['category']=="35") { echo " selected";}?>> RECICLADORA DE ASFALTO (RECUPERADORA) (GALLINA)</option> <option value="69" <? if ($row['category']=="69") { echo " selected";}?>> REMOLQUES DE TIRO</option> <option value="11" <? if ($row['category']=="11") { echo " selected";}?>> RETROEXCAVADORAS(MANOS DE CHANGO)(PACHARAS)</option> <option value="23" <? if ($row['category']=="23") { echo " selected";}?>> SISTEMA DE TOLVAS ADM</option> <option value="6" <? if ($row['category']=="6") { echo " selected";}?>> TANQUES DE ALMACENAMIENTO</option> <option value="66" <? if ($row['category']=="66") { echo " selected";}?>> TANQUES DE ASFALTO</option> <option value="52" <? if ($row['category']=="52") { echo " selected";}?>> TANQUES DE CALENTAMIENTO "CON CALDERA"</option> <option value="53" <? if ($row['category']=="53") { echo " selected";}?>> TANQUES DE CALENTAMIENTO "FUEGO DIRECTO"</option> <option value="9" <? if ($row['category']=="9") { echo " selected";}?>> TORRES DE LUZ PORTATILES</option> <option value="8" <? if ($row['category']=="8") { echo " selected";}?>> TRACK DRILL S</option> <option value="40" <? if ($row['category']=="40") { echo " selected";}?>> TRACTOCAMIONES 5ta. RUEDA</option> <option value="60" <? if ($row['category']=="60") { echo " selected";}?>> TRACTORES AGRICOLA</option> <option value="10" <? if ($row['category']=="10") { echo " selected";}?>> TRACTORES SOBRE ORUGAS (BULLDOZER S)</option> <option value="36" <? if ($row['category']=="36") { echo " selected";}?>> ZANJADORAS</option> </select></dd> </dl><dl> <dt><label for="promo"><br> Promover en Home:</label></dt> <dd> <select size="1" name="promo"> <option value="" selected="selected"></option> <option value="1" <? if ($row['home']=="1") { echo " selected";}?>> Si </option> <option value="0" <? if ($row['home']=="0") { echo " selected";}?>> No </option> </select></dd> </dl><br> <dl> <dt><label for="mark">Marca:</label></dt> <dd><input type="text" name="mark" id="mark" size="35" value="<?php echo $row['mark']?>" style="text-transform:uppercase;" /></dd> </dl><br><br> <dl> <dt><label for="model">Modelo:</label></dt> <dd><input type="text" name="model" id="model" size="20" value="<?php echo $row['model']?>" style="text-transform:uppercase;" /></dd> </dl><br><br> <dl> <dt><label for="year">Año:</label></dt> <dd><input type="text" name="year" id="year" size="4" maxlength="4" value="<?php echo $row['years']?>" onkeyup="if(isNaN(this.value)){alert('sólo puede introducir números');this.value=this.value.substring(0,this.v alue.lenght-1)}" /></dd> </dl><br><br> <dl> <dt><label for="series">Serie:</label></dt> <dd><input type="text" name="series" id="series" size="15" maxlength="25" value="<?php echo $row['num_set']?>" /></dd> </dl><br><br> <dl> <dt><label for="economic">No. Economico:</label></dt> <dd><input type="text" name="economic" id="economic" size="20" maxlength="20" value="<?php echo $row['economic_number']?>" onkeyup="if(isNaN(this.value)){alert('sólo puede introducir números');this.value=this.value.substring(0,this.v alue.lenght-1)}" /></dd> </dl><br><br> <dl> <dt><label for="video">Video:</label></dt> <span style="font-size:9px; color:#666">(Inserte el link de video)</span> <dd><input type="text" name="video" id="video" size="40" value="<?php echo $row['video_1']?>" /></dd> </dl><br><br> <dl> <dt><label for="datasheet">Ficha Técnica:</label></dt> <span style="font-size:9px; color:#666">(Inserte el link html)</span> <dd><input type="text" name="datasheet" id="datasheet" size="50" value="<?php echo $row['Datasheet']?>" /></dd> </dl><br><br> <dl> <dt><label for="supplier">Proveedor del Equipo:</label></dt> <dd><input type="text" name="supplier" id="supplier" size="40" value="<?php echo $row['site']?>" style="text-transform:uppercase;" /></dd> </dl><br><br> <dl> <dt><label for="price">Precio en Dlls:</label></dt> <dd><input type="text" name="price" id="price" size="10" value="<?php echo $row['dlls']?>" onkeyup="if(isNaN(this.value)){alert('sólo puede introdicur números');this.value=this.value.substring(0,this.v alue.lenght-1)}" /></dd> </dl> </div> </div> <div class="clear"></div> <div align="right" style="padding:5px 5px 0 0;"><input type="submit" name="submit" id="submit" value="Guardar Cambios" /></div> </form> <? } ?> </div> </div> </div> </div> <div id="footer"> </div> </body> </html> <?php } } ?>
Gracias y saludos