hola gente. les cuento que es lo que estoy intentando de hacer... tomando un script hecho por un miembro del foro... el script de este usuario lo que hacia era preguntar si existia un directoria llamdo archivos y en caso contrario lo creaba. y luego subia la imagen correspondiente.. yo lo que estoy intentando hace unas cuantas horas sin obtener resultados es crear una carpeta con el nombre del codigo y que ahi se guarden las imagenes.. la carpeta se crea tal cual quiero, pero las imagenes no se guardan dentro del directorio
les paso el codigo espero que me puedan dar una mano y muchas gracias
Código PHP:
<?php
//Maximo tamaño en bytes
$MAX_SIZE = 200000;
//Array con extensiones
$FILE_EXTS = array('.zip','.jpg','.png','.gif','.rar');
//URL
$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
//Directorio de subida
$upload_dir = $_POST[codigo];
if($enviar2) {
if (!is_dir($upload_dir)) {
if (!mkdir($upload_dir))
die ("El directorio no existe o no puede crearse");
if (!chmod($upload_dir,0777))
die ("Fallo el cambio de permisos a 0777.");
}
//Acá hacemos un log.txt con algunos datos como fecha e IP
if ($_FILES['userfile']) {
$archivo_log = fopen("log.txt","a");
fwrite($archivo_log,date("Y.m.d h:i:s")." Subida - $_SERVER[REMOTE_ADDR] "
.$_FILES['userfile']['name']." "
.$_FILES['userfile']['type']."\n");
fclose($archivo_log);
$file_type = $_FILES['userfile']['type'];
$file_name = $_FILES['userfile']['name'];
$file_ext = strtolower(substr($file_name,strrpos($file_name,".")));
//Chequeo que los archivos no excedan el limite
if ( $_FILES['userfile']['size'] > $MAX_SIZE)
$mensaje = "El archivo debe pesar menos que 200KB.";
//Chequeo la extension
else if (!in_array($file_ext, $FILE_EXTS))
$mensaje = "Lo siento, archivos $file_ext no estan permitidos.";
else
$mensaje = do_upload($upload_dir, $upload_url);
print "<script>window.location.href='$url?mensaje=$mensaje'</script>";
}
else if (!$_FILES['userfile']);
else
$mensaje = "Archivo invalido.";
//LISTA DE ARCHIVOS
$handle=opendir($upload_dir);
$filelist = "";
while ($file = readdir($handle)) {
if(!is_dir($file) && !is_link($file)) {
$filelist .= "<a href='$upload_dir$file'>".$file."</a>";
$filelist .= "<sub><small><font color=grey> ".date("d-m H:i", filemtime($upload_dir.$file))
."</font></small></sub>";
$filelist .="<br>";
}
}
//Acá hacemos el upload
function do_upload($upload_dir, $upload_url) {
$temp_name = $_FILES['userfile']['tmp_name'];
$file_name = $_FILES['userfile']['name'];
//Acá reemplazo saco las comillas y barras de los nombres
$file_name = str_replace("\\","",$file_name);
$file_name = str_replace("'","",$file_name);
//Acá reemplazo los espacios del nombre por guion bajo
$file_name = str_replace(" ","_",$file_name);
$file_path = $upload_dir.$file_name;
//Chequeo el nombre del archivo
if ( $file_name =="") {
$mensaje = "Nombre inválido o vacío";
return $mensaje;
}
$resultado = move_uploaded_file($temp_name, $file_path);
if (!chmod($file_path,0777))
$mensaje = "Fallo el cambio de permisos a 0777.";
else
$mensaje = ($resultado)?"$file_name" :
"Hubo un error al subir el archivo.";
return $mensaje;
}
?>
<html>
<title>Upload con PHP - PHP con Dreamweaver<title>
<center>
<font color=red><?php echo $mensaje;?></font>
<br>
<form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post">
Archivo: <input type="file" id="userfile" name="userfile">
<input type="submit" name="upload" value="Subir">
</form>
}
<?php
echo'
<form method="post" action="add_reg.php3">
<input type="hidden" name="botones" value="'.$mensaje.'">
categoria :<input type="Text" name="categoria"><br>
Localidad:<input type="Text" name="localidad"><br>
ubicacion:<input type="Text" name="ubicacion"><br>
precio :<input type="Text" name="precio"><br>
Precius :<input type="Text" name="precious"><br>
descripcion :<input type="Text" name="descripcion"><br> ///modificar con listin desplegable
tipo :<input type="Text" name="tipo"><br>
<input type="Submit" name="enviar" value="Aceptar información">';
}
echo'
</FORM>
<form method="post" action="uploaddef2.php">
codigo :<input type="Text" name="codigo">
<input type="Submit" name="enviar2" value="Aceptar información">';
?>
manu
<br><b>Archivos Subidos:</b>
<hr width=70%>
<?=$filelist?>
<hr width=70%>
</center>
</html>
espero que me puedan dar una mano..
gracias
Manu