Foros del Web » Programando para Internet » PHP »

Error envio de n imagenes al servidor?

Estas en el tema de Error envio de n imagenes al servidor? en el foro de PHP en Foros del Web. Estoy haciendo pruebas en local para subir n imagenes a una carpeta pero no tengo exito y he intentado de varias forma y no se ...
  #1 (permalink)  
Antiguo 18/03/2009, 09:43
Avatar de jpunk  
Fecha de Ingreso: octubre-2005
Ubicación: Bogota
Mensajes: 335
Antigüedad: 18 años, 6 meses
Puntos: 0
De acuerdo Error envio de n imagenes al servidor?

Estoy haciendo pruebas en local para subir n imagenes a una carpeta pero no tengo exito y he intentado de varias forma y no se que pasa, no veo el error.

el codigo que uso es el siguiente:

Código PHP:
<?php

$postback 
= isset($_POST) ? true false;

if(
$postback) {
    
extract($_POST);  // tal vez no sea necesario
    
$archivos '';
    
    if(isset(
$_FILES['archivos'])) {  // Si es que subio algun archivo
        
//        $cantidad =count($_FILES["archivos"]);
//        echo 'Se enviaron: '.$cantidad.' archivos'; 

//        $cantidad = 0;
        
foreach($_FILES['archivos']['error'] as $key => $error) {  // itera sobre la coleccion de archivos
//             $cantidad++;
             
             
if($error == UPLOAD_ERR_OK){
                 echo 
'valor $key='.$key."<br />";
             }
            
            if(
$error == upload_err_ok) {  // si no hay error
                
$tmp_name $_FILES["archivos"]["tmp_name"][$key];
                
$name $_FILES["archivos"]["name"][$key];
                
$name uniqid('bc').'_'.$name;  // Genera un nombre unico para el archivo
                
                
move_uploaded_file($tmp_name$_SERVER['DOCUMENT_ROOT']."./pruebas/imagenes/"); // Guardamos el archivo en una ubicacion
            
}
         
        }
//        echo 'Cantidad de archivos:'.$cantidad;
    
}
}
    
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Multiple Upload</title>
<style type="text/css">
/* mostrar bien los nuevos elementos */
.file{
display:block;
}
span a{
margin-left:1em;
}

input, textarea{
border:3px double #CCC;
background-color:#FAFAFA;
}
</style>
<script type="text/javascript">
var numero = 0;

// Funciones comunes
c= function (tag) { // Crea un elemento
   return document.createElement(tag);
}
d = function (id) { // Retorna un elemento en base al id
   return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
   return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
   return evt.srcElement ?  evt.srcElement : evt.target;
}

addField = function () {
   container = d('files');

   span = c('SPAN');
   span.className = 'file';
   span.id = 'file' + (++numero);

   field = c('INPUT');
   field.name = 'archivos[]';
   field.type = 'file';

   a = c('A');
   a.name = span.id;
   a.href = '#';
   a.onclick = removeField;
   a.innerHTML = 'Quitar';

   span.appendChild(field);
   span.appendChild(a);
   container.appendChild(span);
}
removeField = function (evt) {
   lnk = f(e(evt));
   span = d(lnk.name);
   span.parentNode.removeChild(span);
}
</script>
</head>

<body>
 <form name="frm" id="frm" action="" method="post" enctype="multipart/form-data">
   <dl>
     <dt>
       <label>Archivos Adjuntos</label>&nbsp;&nbsp;
         <a href="#" onclick="addField()">anadir archivo</a>
     </dt>
     <dd>
       <div id="files">         
         
       </div>
     </dd>
     <dd>
       <input type="submit" value="Enviar" id="postback" name="postback" />
     </dd>
   </dl>
 </form>
</body>
</html>

el error que me genera es:


Warning: move_uploaded_file(C:/wamp/www/./pruebas/imagenes/) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\pruebas\Mi_uploader1.php on line 27


alguien puede ayudarme.

gracias de antemano.
  #2 (permalink)  
Antiguo 18/03/2009, 09:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Error envio de n imagenes al servidor?

$_SERVER['DOCUMENT_ROOT'] es idéntico a usar ./

así que debes decidir, que vas a usar??

(osea, no puedes usar ambas, ya que generan un error... verdad?)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/03/2009, 10:15
Avatar de jpunk  
Fecha de Ingreso: octubre-2005
Ubicación: Bogota
Mensajes: 335
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Error envio de n imagenes al servidor?

OK gracias por responder tan pronto.

pero continua el error al quitar ./

me genera el mismo error.


Warning: move_uploaded_file(C:/wamp/www/pruebas/imagenes/) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\pruebas\Mi_uploader1.php on line 27
  #4 (permalink)  
Antiguo 18/03/2009, 10:21
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Error envio de n imagenes al servidor?

¿Has revisado si la carpeta esa a la que tratas de mover existe y tienes los permisos necesarios para acceder a ella?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 18/03/2009, 10:37
Avatar de jpunk  
Fecha de Ingreso: octubre-2005
Ubicación: Bogota
Mensajes: 335
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Error envio de n imagenes al servidor?

Si claro la carpeta existe pues estaba antes realizando pruebas de subir una unica imagen y funciona sin problema, ademas como estoy en local los permisos no podria ser la razon de la falla.

Gracias por contestar: David el Grande
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 06:03.