Foros del Web » Programando para Internet » PHP »

Copiar archivo a directorio generado dinámicamente y da error

Estas en el tema de Copiar archivo a directorio generado dinámicamente y da error en el foro de PHP en Foros del Web. Hola. He hecho un scrip que genera un directorio, que luego dentro del mismo es copiado un archivo. El directorio se crea correctamente pero no ...
  #1 (permalink)  
Antiguo 21/07/2011, 09:26
 
Fecha de Ingreso: abril-2011
Ubicación: España, Mdrid
Mensajes: 89
Antigüedad: 13 años
Puntos: 1
Copiar archivo a directorio generado dinámicamente y da error

Hola. He hecho un scrip que genera un directorio, que luego dentro del mismo es copiado un archivo. El directorio se crea correctamente pero no me copia el archivo. He dado a toda la carpeta subcarpetas y archivos permisos 777 para evitar problemas.

¿Qué demonios ha mal en este archivo?

Código PHP:
<?php
session_start
();
$mensaje_error "";
if (
$_SERVER['REQUEST_METHOD'] == 'POST')

{
    
$accion = isset($_POST['accion']) ? $_POST['accion'] : '';
    
  
   
    if (
$accion == 'crear_canal')
   {
       
   
$ruta "../articulos/articulos/".$_POST['canal'];
   
    
$ruta_editor "../articulos/editor_canal.php";
     
   if (
file_exists($ruta)) {
       
         
$mensaje_error "El canal ya existe.";
         
    } else {
        
          
mkdir($ruta0777);
  
          
$mensaje_error "Canal creado";
  
    }
            
    if (!
ereg("^[A-Za-z0-9_!@$]{1,50}$"$_POST['canal']))
    
   {
      
$mensaje_error 'Título no permitido.';
      
   }
    
    if (!
copy($ruta$ruta_editor)) {
        
        echo 
"Fallo la copia $file...\n";
    }


}

}
?>

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" >
<link rel="stylesheet" type="text/css" href="../estilos/estiloarticulos.css"></link>
<title>Musicaendo - Nuevo artÃ*culo</title>
</head>
<body>
<!-- CABEZA -->
<div id="cabecero">
<div id="menu">
<div id="tabla">
    <ul>
<li><a href="http://www.forosdelweb.com/f18/opciones/index.php" >Opciones</a></li>    
<li><a href="http://www.forosdelweb.com/f18/usuarios/estadisticas.php" >Estadí*sticas</a></li>    
    </ul>
</div>
</div>
<div id="menu2">
<div id="tabla2">
    <ul>
<li><a href="login.php" id="especial">Iniciar sesiónn</a></li>     
    </ul>
</div>
</div>
</div>
<div id="contenido">
<div id="herramienta">
<div class="margen">
<div id="div_articulo">
<form name="crear_articulo" method="post" action="<?php echo basename(__FILE__); ?>" id="crear_canal">
<input type="hidden" name="accion" value="crear_canal">
<table cellspacing="4" cellpadding="0" class="tablon">
<tr>
  <td colspan="2" align="center" > <b>Nuevo Canal</b></td>
</tr>
<tr>
   <td align="right" >Usuario:</td>
   <td align="left">
   <?php echo $_SESSION['nombre_usuario']; ?>
   </td>
</tr>
<tr>
   <td align="right" >Canal:</td>
   <td align="left"><input type="text" name="canal" value=""></td>
</tr>
<tr>
   <td colspan="2"><?php echo $mensaje_error?></td>
</tr>
<tr>
   <td>&nbsp;</td><td align="left" valign="bottom"><input type="submit" name="crear_canal" value="¡Crear!" id="crear_canal"></td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
  #2 (permalink)  
Antiguo 21/07/2011, 09:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Copiar archivo a directorio generado dinámicamente y da error

Copy acepta 2 parámetros, el primero es el archivo original, y el segundo el destino, por lo que entiendo en tu código, estas invirtiendo los parámetros y te falta específicar el archivo destino.

Saludos.
  #3 (permalink)  
Antiguo 21/07/2011, 09:42
 
Fecha de Ingreso: abril-2011
Ubicación: España, Mdrid
Mensajes: 89
Antigüedad: 13 años
Puntos: 1
Respuesta: Copiar archivo a directorio generado dinámicamente y da error

ok gracias, lo de la inversión ya me había dado cuenta pero lo del destino no lo sabía, muchas gracias de verdad.

Etiquetas: copy&paste, directorio, error:
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 17:26.