Foros del Web » Programando para Internet » PHP »

subir imagenes

Estas en el tema de subir imagenes en el foro de PHP en Foros del Web. buenas tarde tengo una aplicacion para subir imagenes pero si cambio la ruta esta no encuentra la carpeta Código: <?php ///***************codigo php para establecer otro ...
  #1 (permalink)  
Antiguo 06/09/2010, 14:29
 
Fecha de Ingreso: octubre-2005
Mensajes: 129
Antigüedad: 18 años, 6 meses
Puntos: 0
De acuerdo subir imagenes

buenas tarde tengo una aplicacion para subir imagenes pero si cambio la ruta esta no encuentra la carpeta

Código:
<?php ///***************codigo php para establecer otro fomulario para subir archivos de imagen*********************************************************
function upload_back() 
{
 
global $globals; 

  //$uploaddir = 'images_dir/'; 
  //$dir = opendir($uploaddir); 
  $uploaddir = '../data/img_proyectos/'; $dir = opendir($uploaddir);
  $files = array(); 
  date_default_timezone_set('America/Santiago');
  $nombre = date("YmdHis");

  if(!empty($_POST['attachement_loos']))
  { 
  $globals['attachement'] = $_POST['attachement_loos']; 
  } 

  if(isset($_FILES['attachement']) && !empty($_FILES['attachement']['name']))
   { 

    if(!eregi('image/', $_FILES['attachement']['type']))
	 { 

      echo 'The uploaded file is not an image please upload a valide file!'; 

    } 
	else 
	{ 

        while($file = readdir($dir)) 
		{ 
		array_push($files,"$file"); echo $file; 
		}
		 closedir($dir); 

        $_FILES['attachement']['name'] = ceil(count($files)+ $nombre).''.strrchr($_FILES['attachement']['name'], '.'); 
        $uploadfile = $uploaddir . basename($_FILES['attachement']['name']);
		
		$previousToDestroy = empty($globals['attachement']) && !empty($_FILES['attachement']['name']) ? '' : $uploaddir . $files[ceil(count($files)- $nombre)]; 
		

      if(!move_uploaded_file($_FILES['attachement']['tmp_name'], $uploadfile))
	   { 

echo '<pre> 
Your file was not uploaded please try again 
here are your debug informations: 
'.print_r($_FILES) .' 
</pre>'; 

      } else { 

          echo 'La imagen fue guardada'; 

      } 

/*** 
    and reset the globals vars if we maybe want to 
    reedit the form: first the new image, second 
    delete the previous.... 
***/ 

        $globals['attachement'] = $_FILES['attachement']['name']; 
        if(!empty($previousToDestroy)) 
		{
		 unlink($previousToDestroy); 
		} 

     

   }
  } 
} 

upload_back(); 

	  echo "<form id=\"form2\" name=\"form2\" method=\"post\" enctype=\"multipart/form-data\">";
      echo "<table width=\"350\" border=\"2\" cellpadding=\"1\" cellspacing=\"1\" bordercolor=\"#003399\">";
                echo "</tr>";
     
	  echo"<tr>";
	  	echo"<td>";
		//echo '<form action="" method="post" enctype="multipart/form-data"> 

  			echo'<input type="file" name="attachement" name="attachement"></input> 
  			<input type="hidden" name="attachement_loos" name="attachement_loos" value="', $globals['attachement'] ,'"></input> 

  			<input type="submit" value="submit"></input>'; 

		//	</form>';
		echo"</td>";
	 echo"</tr>";
      echo"</table>";
	  echo"</form>";  
    
      
?>
la carpeta que aloja images tiene que estar cerca del php, o me dice que no la encuentra
__________________
Pablo Baez
  #2 (permalink)  
Antiguo 06/09/2010, 14:38
Avatar de simplementeronin  
Fecha de Ingreso: mayo-2010
Mensajes: 23
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: subir imagenes

hace algun tiempo uno d elos usuarios de FDW! compartio un script para subir imagene, te paso el codigo...


Cita:
<?php
/*
By using this script you will be able to upload as many files as you want.
The code will check if file existes, limited extensions, file size, file selected ..etc.
For Q. E-mail/MSN: m(at)maaking.com.
*/
###########################################
#----------Upload Multiple Files----------#
#----------Multi-files Uploader-----------#
#-------------Multi-Uploader -------------#
###########################################
/*=========================================\
Author : Mohammed Ahmed(M@@king) \\
Version : 1.0 \\
Date Created: Aug 20 2005 \\
---------------------------- \\
Last Update: Aug 31 2005 \\
---------------------------- \\
Country : Palestine \\
City : Gaza \\
E-mail : [email protected] \\
MSN : [email protected] \\
AOL-IM : maa2pal \\
WWW : http://www.maaking.com \\
Mobile/SMS : 00972-599-622235 \\
\\
===========================================\
------------------------------------------*/
//upload directory.
//change to fit your need eg. files, upload .... etc.
$upload_dir = "images/";
//number of files to upload.
$num_files = 5;
//the file size in bytes.
$size_bytes =51200; //51200 bytes = 50KB.
//Extensions you want files uploaded limited to.
$limitedext = array(".gif",".jpg",".jpeg",".png",".txt",".doc"," .html",".htm",".zip",".rar",".gz");


//check if the directory exists or not.
if (!is_dir("$upload_dir")) {
die ("Error: The directory <b>($upload_dir)</b> doesn't exist");
}
//check if the directory is writable.
if (!is_writeable("$upload_dir")){
die ("Error: The directory <b>($upload_dir)</b> is NOT writable, Please CHMOD (777)");
}


//if the form has been submitted, then do the upload process
//infact, if you clicked on (Upload Now!) button.
if (isset($_POST['upload_form'])){

echo "<h3>Upload results:</h3>";

//do a loop for uploading files based on ($num_files) number of files.
for ($i = 1; $i <= $num_files; $i++) {

//define variables to hold the values.
$new_file = $_FILES['file'.$i];
$file_name = $new_file['name'];
//to remove spaces from file name we have to replace it with "_".
$file_name = str_replace(' ', '_', $file_name);
$file_tmp = $new_file['tmp_name'];
$file_size = $new_file['size'];

#-----------------------------------------------------------#
# this code will check if the files was selected or not. #
#-----------------------------------------------------------#

if (!is_uploaded_file($file_tmp)) {
//print error message and file number.
echo "File $i: Not selected.<br>";
}else{
#-----------------------------------------------------------#
# this code will check file extension #
#-----------------------------------------------------------#

$ext = strrchr($file_name,'.');
if (!in_array(strtolower($ext),$limitedext)) {
echo "File $i: ($file_name) Wrong file extension. <br>";
}else{
#-----------------------------------------------------------#
# this code will check file size is correct #
#-----------------------------------------------------------#

if ($file_size > $size_bytes){
echo "File $i: ($file_name) Faild to upload. File must be <b>". $size_bytes / 1024 ."</b> KB. <br>";
}else{
#-----------------------------------------------------------#
# this code check if file is Already EXISTS. #
#-----------------------------------------------------------#

if(file_exists($upload_dir.$file_name)){
echo "File $i: ($file_name) already exists.<br>";
}else{
#-----------------------------------------------------------#
# this function will upload the files. :) ;) cool #
#-----------------------------------------------------------#
if (move_uploaded_file($file_tmp,$upload_dir.$file_na me)) {
echo "File $i: ($file_name) Uploaded.<br>";
}else{
echo "File $i: Faild to upload.<br>";
}#end of (move_uploaded_file).

}#end of (file_exists).

}#end of (file_size).

}#end of (limitedext).

}#end of (!is_uploaded_file).

}#end of (for loop).
# print back button.
echo "»<a href=\"$_SERVER[PHP_SELF]\">back</a>";
////////////////////////////////////////////////////////////////////////////////
//else if the form didn't submitted then show it.
}else{
echo " <h3>Select files to upload!.</h3>
Max file size = ". $size_bytes / 1024 ." KB";
echo " <form method=\"post\" action=\"$_SERVER[PHP_SELF]\" enctype=\"multipart/form-data\">";
// show the file input field based on($num_files).
for ($i = 1; $i <= $num_files; $i++) {
echo "File $i: <input type=\"file\" name=\"file". $i ."\"><br>";
}
echo " <input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"$size_bytes\">
<input type=\"submit\" name=\"upload_form\" value=\"Upload Now!\">
</form>";
}

//print copyright
echo"<p align=\"right\"><br>Script by: <a href=\"http://www.maaking.com\">maaking.com</a></p>";
?>
espero que te sirva!!! ahhh en la misma carpeta donde va a estar este archivo, tiene que estar un carpetaen este caso "images", ya que es aqui donde va a volcar los rachivos despues de subirlos...

Última edición por simplementeronin; 06/09/2010 a las 14:42 Razón: me confundi de codigo!!!
  #3 (permalink)  
Antiguo 06/09/2010, 20:00
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: subir imagenes

Cita:
if(!eregi('image/',
Es que no te estas manejando enteramente con variables. Fijate que en esta función se declara la ruta manualmente otra vez!
  #4 (permalink)  
Antiguo 07/09/2010, 08:51
 
Fecha de Ingreso: octubre-2005
Mensajes: 129
Antigüedad: 18 años, 6 meses
Puntos: 0
De acuerdo Respuesta: subir imagenes

holaaa simplementeronin vi el codigo esta muy bueno trate de yo dar el nombre del archivo que subo al servidor pero no pude

Código:
//define variables to hold the values.
$new_file = $_FILES['file'.$i];
$file_name = $new_file['name'];
//to remove spaces from file name we have to replace it with "_".
$file_name = str_replace(' ', '_', $file_name);
$file_tmp = $new_file['tmp_name'];
$file_size = $new_file['size'];
esto es para dejarlos en una tabla mysql y despues enlazarlos

como puedo yo poner el nombre del archivo que voy a porner en el servidor
__________________
Pablo Baez
  #5 (permalink)  
Antiguo 13/10/2010, 09:29
Avatar de jhonwilliams  
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 1 mes
Puntos: 76
Respuesta: subir imagenes

Cita:
Iniciado por simplementeronin Ver Mensaje
hace algun tiempo uno d elos usuarios de FDW! compartio un script para subir imagene, te paso el codigo...




espero que te sirva!!! ahhh en la misma carpeta donde va a estar este archivo, tiene que estar un carpetaen este caso "images", ya que es aqui donde va a volcar los rachivos despues de subirlos...
Ese codigo me marca este error:

Código PHP:
Parse errorsyntax errorunexpected T_STRING in /home/xxxxxxxxx/public_html/uploadimages.php on line 100 
La linea 100 hace referencia a

Código PHP:
if (move_uploaded_file($file_tmp,$upload_dir.$file_na me)) { 
Donde esta la función: move_uploaded_file?

Porque veo que se llama pero no veo donde esta el código de la misma o me falta hacer algo para poder usar ese código?

Gracias
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
  #6 (permalink)  
Antiguo 13/10/2010, 10:36
Avatar de jhonwilliams  
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 1 mes
Puntos: 76
Respuesta: subir imagenes

Ya se corrigio.

Código PHP:
if (move_uploaded_file($file_tmp,$upload_dir.$file_na me)) { 
Queda asi:

Código PHP:
if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) { 

Saludos
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)

Etiquetas: imagenes, subir
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 22:29.