Vamos por partes ...
El tema de leer un archivo de un directorio y .. detectar si existe o no (sea una imagen o cualquier otra cosa) .. puedes usar la función:
Código PHP:
<?php
$imagen = "productos/".$codigo_producto.".jpg"; // no sé donde obtendras el código del producto .. pero ese será su nombre.
$imagen_por_defecto = "imagenes/no_hay.jpg";
if (file_exists($imagen)) {
echo "<img src=\"".$imagen."\">";
} else {
echo "<img src=\"".$imagen_por_defecto."\">";
}
?>
Para lo demás .. supongo que usaras una Base de datos? para almacenar la información del producto? ...
Si es así .. y piensas asociar a la imagen del producto con el nombre de ese "código" .. Crea tu tabla en tu BD .. con tus campos de nombre,
código, descripción, precio .. etc ...
A la hora de crear un producto .. haz el UPLOAD del archivo desde tu PC local con las funciones y técnicas de:
http://www.php.net/manual/en/features.file-upload.php
.. ya que el nombre de la imagen ha de ser igual al del campo "código" que usaras en tu formulario de registro/actualización de ese producto .. cuando sube el archivo y estés en el proceso de mover el archivo a su destino definitivo (cuando uses: move_uploaded_file()) ahí le "cambias" el nombre del archivo original (el que usastes en tu "upload" y que tenías en tu PC local) por ese campo "código" que le diste nombre en tu formulario y lo dejas en tus "productos/" directorio que es donde debe quedar ...
Sería algo tipo:
Código PHP:
<form action="procesar.php" method="post" enctype="multipart/form-data">
<input type="text" name="codigo">
etc .. campos .....
<input type="file" name="imagen">
</form>
procesar.php
Código PHP:
<?
if (move_uploaded_file($_FILES['imagen']['tmp_name'],"productos/".$_POST['codigo'].".jpg")){
echo "Subió el archivo OK";
// y aquí creas tu registro en tu BD (INSERT/UPDATE .. )
} else {
echo "algo falló";
}
?>
(ojo que toda imagen sea jpg.. sinó habrá que implementar más lógica para que que extensión tienía el archivo origianl (o mejor formato MIME) y de ahí poner el .jpg o lo que corresponda como extensión para Codigo.ext)
Un saludo,