Foros del Web » Programando para Internet » PHP »

como subir imagen desde url

Estas en el tema de como subir imagen desde url en el foro de PHP en Foros del Web. hola a todos es que quiero hacer para subir imagen de dos forma de url o input file ahora mismo tengo usando esto para subir ...
  #1 (permalink)  
Antiguo 24/09/2015, 15:56
 
Fecha de Ingreso: junio-2012
Ubicación: En el Mundo
Mensajes: 759
Antigüedad: 11 años, 10 meses
Puntos: 10
como subir imagen desde url

hola a todos es que quiero hacer para subir imagen de dos forma de url o input file

ahora mismo tengo usando esto para subir imagen con input file

Código PHP:
Ver original
  1. function compressImage($ext,$uploadedfile,$path,$actual_image_name,$newwidth,$newheight)
  2. {
  3.  
  4. if($ext=="jpg" || $ext=="jpeg" )
  5. {
  6. $src = imagecreatefromjpeg($uploadedfile);
  7. }
  8. else if($ext=="png")
  9. {
  10. $src = imagecreatefrompng($uploadedfile);
  11. }
  12. else if($ext=="gif")
  13. {
  14. $src = imagecreatefromgif($uploadedfile);
  15. }
  16. else
  17. {
  18. $src = imagecreatefrombmp($uploadedfile);
  19. }
  20.  
  21. list($width,$height)=getimagesize($uploadedfile);
  22. $tmp=imagecreatetruecolor($newwidth,$newheight);
  23. imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
  24. $filename = $path.$actual_image_name;
  25. imagejpeg($tmp,$filename,100);
  26. return $actual_image_name;
  27. }
  28.  
  29.  
  30.  
  31. function getExtension($str)
  32. {
  33. $i = strrpos($str,".");
  34. if (!$i)
  35. {
  36. return "";
  37. }
  38. $l = strlen($str) - $i;
  39. $ext = substr($str,$i+1,$l);
  40. return $ext;
  41. }
  42.  
  43.  
  44. if(isset($_GET['GO'])) {
  45.  
  46.  
  47.  
  48. if($_POST['tipo_envio']==1){
  49. ////cargar portada
  50.  
  51.  
  52.  
  53.  
  54. $path = "../file/";
  55.  
  56. $valid_formats = array("jpg", "png", "gif", "bmp","jpeg","PNG","JPG","JPEG","GIF","BMP");
  57. if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
  58. {
  59.  
  60. $imagename = $_FILES['file']['name'];
  61. $size = $_FILES['file']['size'];
  62. if(strlen($imagename))
  63. {
  64. $ext = strtolower(getExtension($imagename));
  65. if(in_array($ext,$valid_formats))
  66. {
  67. if($size<(3024*3024)) // Image size max 3 MB
  68. {
  69. $actual_image_name = time().rand(125,589).".".$ext;
  70. $uploadedfile = $_FILES['file']['tmp_name'];
  71.  
  72. //Re-sizing image.
  73.  
  74. $imagen_comprimida=compressImage($ext,$uploadedfile,$path,$actual_image_name,240,360);
  75.  
  76. $datos = array("id"=>rand(125,894), "tipo"=>"poster", "archivo"=>$imagen_comprimida, "msj"=>"poster cargado.");
  77.  
  78. echo json_encode($datos);
  79.  
  80.  
  81. }
  82. else
  83. echo "max 3 MB";
  84. }
  85. else
  86. echo "formato no valido";
  87. }
  88. else
  89. echo "seleciona una imagen! ".print_r($_FILES);
  90. }
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101. }elseif($_POST['tipo_envio']==2){
  102. /// cargar subtitulos  
  103.  
  104. $path = "../../subtitulos/";
  105.    
  106. $formatos_validos = array("srt", "vtt", "SRT", "VTT");
  107. if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
  108. {
  109.  
  110. $nombre_archivo = $_FILES['file']['name'];
  111. $size = $_FILES['file']['size'];
  112. if(strlen($nombre_archivo))
  113. {
  114. $ext = strtolower(getExtension($nombre_archivo));
  115. if(in_array($ext,$formatos_validos))
  116. {  
  117.    
  118. if($size<(3024*3024)) // Image size max 3 MB
  119. {
  120.    
  121. $nombresub = time().rand(125,589).".".$ext;
  122.    
  123. $up = move_uploaded_file($_FILES['file']['tmp_name'], $path.$nombresub);
  124. if($up){
  125.  
  126.  
  127. $datos = array("id"=>rand(125,894), "tipo"=>"subtitulo", "archivo"=>$nombresub, "msj"=>"subtitulos cargados.");
  128.  
  129. echo json_encode($datos);
  130.    
  131. $uploaded = true;
  132.  
  133.  
  134. }else{
  135.     echo "ocurrio un error al subir";
  136. }
  137.  
  138.  
  139. }else{
  140.     echo "peso excedido";
  141. }
  142.  
  143.    
  144. }else{
  145.     echo "extencion invalidad";
  146. }
  147.  
  148. }else{
  149.     echo "nombre_archivo vacion";
  150. }
  151.  
  152. }else{
  153.     echo "REQUEST_METHOD";
  154. }  
  155.    
  156. }elseif($_POST['tipo_envio']==3){
  157. ////cargar portada
  158.  
  159.  
  160.  
  161.  
  162. $path = "../../posters/";
  163.  
  164. $valid_formats = array("jpg", "png", "gif", "bmp","jpeg","PNG","JPG","JPEG","GIF","BMP");
  165. if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
  166. {
  167.  
  168. $imagename = $_FILES['file']['name'];
  169. $size = $_FILES['file']['size'];
  170. if(strlen($imagename))
  171. {
  172. $ext = strtolower(getExtension($imagename));
  173. if(in_array($ext,$valid_formats))
  174. {
  175. if($size<(3024*3024)) // Image size max 3 MB
  176. {
  177. $actual_image_name = time().rand(125,589).".".$ext;
  178. $uploadedfile = $_FILES['file']['tmp_name'];
  179.  
  180. //Re-sizing image.
  181.  
  182. //$imagen_comprimida=compressImage($ext,$uploadedfile,$path,$actual_image_name,240,360);
  183.  
  184.  
  185. $up = move_uploaded_file($uploadedfile, $path.$actual_image_name);
  186. if($up){
  187.  
  188.  
  189. $datos = array("id"=>rand(125,894), "tipo"=>"poster", "archivo"=>$actual_image_name, "msj"=>"poster cargado.");
  190.  
  191. echo json_encode($datos);
  192.  
  193.  
  194.  
  195. }
  196.  
  197.  
  198. }
  199. else
  200. echo "max 3 MB";
  201. }
  202. else
  203. echo "formato no valido";
  204. }
  205. else
  206. echo "seleciona una imagen! ".print_r($_FILES);
  207. }
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218. }
  219.  
  220. }else{
  221.  
  222. print_r($_POST);
  223. print_r($_FILES);  
  224.    
  225. }

y quiero poder hacer que funcione con url o imput file

Etiquetas: url
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 01:43.