Foros del Web » Programando para Internet » PHP »

Eliminar archivos

Estas en el tema de Eliminar archivos en el foro de PHP en Foros del Web. Hola amigos, queria que me orientarais un poco haber como puedo hacer esto. Miren tengo una BD en MySQL con dos tablas relacionadas, galeria y ...
  #1 (permalink)  
Antiguo 21/04/2010, 10:33
Avatar de picazamora  
Fecha de Ingreso: febrero-2008
Ubicación: Zamora
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 0
Eliminar archivos

Hola amigos, queria que me orientarais un poco haber como puedo hacer esto.

Miren tengo una BD en MySQL con dos tablas relacionadas, galeria y fotos, cuando borro la galeria se borran los registros de las fotos gracias al ON DELETE CASCADE, pero claro aqui viene el problema y esque en la BD solo guardo la ruta de las fotos y vale me borra la foto pero me interesaria que tambien me borrara el archivo de la ruta y aqui esta mi duda. En como borrar esos archivos al borrar la galeria, tendria que hacer una consulta donde saque todas las fotografias y ir borran dolos todos con la orden
Código PHP:
unlink() 
bueno os paso el codigo como lo e intentado hacer haber que opinais. (esta con pinzas y no funciona es un boceto)

un Saludo y gracias

Código PHP:
<?
if(isset($_POST['submit'])){
        
//Borramos la foto de la carpeta, menos si es el logo.jpg
        
if('/foto/galeria/logo.jpg' != $_GET['ruta']){
            if (!
unlink($_GET['ruta'])){ 
                echo 
'no se pudo borrar el archivo :'.$_GET['ruta'];
            }
            }
        
//borramos el registro
        //nos conectamos a la bd
        
$cnx conectar ();
        
//consulta
        
$sql "DELETE FROM Galeria, WHERE id=".$_GET['id'];
        
$res mysql_query($sql) or die (mysql_error());
        
//cerramos la con
        
mysql_close($cnx);
        
//mensaje de exito
        
$titulo "La imagen ha sido Eliminada";
        
$mensaje "La imagen ha sido Eliminado";
        
$link "<a href='index.php'>regresar</a>";
        include(
"../../mensajes.php");
        exit;
}
if(empty(
$_GET['id'])){
    
header("Location: index.php");
}
$cnx conectar();
$res mysql_query ("SELECT * FROM fotos WHERE Galeriaid =".$_GET['id']) or die (mysql_error());

    if(
mysql_num_rows($res)> 0) {
        
//si hay datos
        
list($ruta) = mysql_fetch_array($res);
?> 
<form action="<? echo $SERVER['../../../PHP_SELF']?>" method="post" name="form1">
  <table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
      <td height="30" class="cabeceraBold">Eliminar Registro</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>
        <input name="id" type="hidden" id="id" value="<? echo $_GET['id'];?>">
        <input name="ruta" type="hidden" id="ruta" value="<? echo $_GET['ruta'];?>">
      </td>
    </tr>
    <tr>
      <td>
        <input type="hidden" name="id" value="<? echo $id;?>">
        ¿Eliminar registro : <? echo $_GET['id'];?> ?<br>
      </td>
    </tr>
    <tr>
      <td align="right"><input name="submit" type="submit" id="submit" value="Enviar"></td>
    </tr>
    <tr>
      <td height="30" class="pie"><a href="index.php">regresar</a></td>
    </tr>
  </table>
</form>
<?
}else{
    
//no hay datos
    
echo "No hay registros que coincidan con el identificador";
}
mysql_close($cnx)
?>
</body>
</html>
  #2 (permalink)  
Antiguo 21/04/2010, 10:45
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Eliminar archivos

¿Te sale algún error? Solo necesitas hacer una consulta a la base de datos e ir borrando en un bucle los archivos que le muestres.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 21/04/2010, 11:20
Avatar de picazamora  
Fecha de Ingreso: febrero-2008
Ubicación: Zamora
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Eliminar archivos

gracias ya esta solucionado, hice un bucle con while y listo.
LA verdad que era mas sencillo de lo que pensaba.

un saludo y gracias a todos

Etiquetas: eliminar
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 07:59.