Foros del Web » Programando para Internet » PHP »

visualizar imagen desde otro dominio con curl

Estas en el tema de visualizar imagen desde otro dominio con curl en el foro de PHP en Foros del Web. Hola amigos estoy haciendo un login coon curl mi dominio secundario es quien hara ese proceso este es mi script enviando los datos con curl ...
  #1 (permalink)  
Antiguo 13/01/2011, 16:12
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 21 años, 4 meses
Puntos: 21
Exclamación visualizar imagen desde otro dominio con curl

Hola amigos estoy haciendo un login coon curl mi dominio secundario es quien hara ese proceso
este es mi script enviando los datos con curl

Código PHP:
Ver original
  1. //procedemos ah realizar la conexion remota cURL                   
  2.             $url = 'http://dominio2.com/curl_login.php';
  3.             $body = 'userCh='.$_POST['username'].'&passCh='.$_POST['password'];
  4.             $remote = curl_init($url);
  5.             curl_setopt($remote, CURLOPT_POST, true);
  6.             curl_setopt($remote, CURLOPT_POSTFIELDS, $body);
  7.             curl_setopt($remote, CURLOPT_RETURNTRANSFER, true);
  8.             $respuesta = curl_exec($remote);
  9.             //verificamos si hubo algun error la realizar la solicitud remota
  10.             if(curl_errno($remote))
  11.             {  
  12.                 echo 'Error: ' . curl_error($remote);
  13.             }
  14.             else
  15.             {  
  16.                 echo $respuesta;
  17.             }
  18.             curl_close($remote);

este script antes es solicitado de manera asincrona con jquery

en el domio2

este sera el archivo que validara en e ste momento solo tengo esto

Código PHP:
Ver original
  1. $login[] = array("UserC" => $_POST["'userCh"]."ok",
  2.                  "PassC" => $_POST["passCh"]."ok2",
  3.                  "FotoC" = $_POST["passCh"]."ok2"
  4.                     );
  5. echo json_encode($login);//retorno en formato json los datos

mhasta aqui todo funcionan bien

ahora como puedo obtener una imagen del en el dominio2 para mostrarlo en el domioA
junto con los datos que ya retorno

¿hay que hacer otro script solo para la imagen?

encontr este script para buscar una imagen

Código PHP:
Ver original
  1. $link = curl_init();
  2. curl_setopt($link, CURLOPT_URL, "http://dominio2.com/Login_externo/perfil.jpg");
  3. curl_setopt($link, CURLOPT_REFERER, "http://dominio2.com/");
  4. curl_setopt($link, CURLOPT_HEADER, false);
  5. header("Content-type: image/jpeg");
  6. curl_exec($link);
  7. curl_close($link);

espero me puedan asesorar

saludos
__________________
gerardo
  #2 (permalink)  
Antiguo 13/01/2011, 21:48
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: visualizar imagen desde otro dominio con curl

Podrías crear más bien un código que sea para añadir la etiqueta <base /> y la dirección principal donde estás visitando. O podrías añadir recorriendo el texto y añadiendo en cada src la dirección principal de la imagen.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 13/01/2011, 21:59
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 21 años, 4 meses
Puntos: 21
Respuesta: visualizar imagen desde otro dominio con curl

gracias abimaelrc

sabes algun modo en especial saludos
__________________
gerardo
  #4 (permalink)  
Antiguo 14/01/2011, 05:51
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: visualizar imagen desde otro dominio con curl

Solo es cuestión de usar str_replace o preg_replace.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 14/01/2011, 16:52
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 21 años, 4 meses
Puntos: 21
Pregunta Respuesta: visualizar imagen desde otro dominio con curl

disculpen si no he seguido las recomendaciones este es mi plan que deseo
hacer corrijamen si esta mal planteada

esto seria la pagina a visualizar por parte de usuarios

ver.php
Código:
<body>



<table style="width: 100%" border="1">
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td><img src="http://localhost/curl_remoto.php" /></td>
	</tr>
</table>

</body>
y esta la pagina remota
curl_remoto.php

Código:
$link = curl_init();
curl_setopt($link, CURLOPT_URL, "http://dominioremoto.com/perfil/logocuhm.jpg");
curl_setopt($link, CURLOPT_REFERER, "http://dominioremoto.com/"); 
curl_setopt($link, CURLOPT_HEADER, false);
header("Content-type: image/jpeg");
curl_exec($link);
$httpCode = curl_getinfo($link, CURLINFO_HTTP_CODE);
if($httpCode == 404)
{
	echo "http://localhost/default.png"/>"
}
curl_close($link);
claro que esto no funciona de lo que se trata es buscar la imagen
del user y si no se encuentra mostrar una de default que este en
el dominio A

saludos
__________________
gerardo
  #6 (permalink)  
Antiguo 15/01/2011, 14:41
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 21 años, 4 meses
Puntos: 21
Respuesta: visualizar imagen desde otro dominio con curl

bueno creo haber encontrado mi solucion

Código:
image_url = "http://dominioremoto.com/Login/perfil.jpg";
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $image_url);
// Getting binary data
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
$image = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);


if($httpCode == 200)//si esta la imagen
{
	header("Content-type: image/jpeg");
	echo $image;
}
else //no esta mostramos una imagen de default del domnio local
{
	
	$nombreImagen = 'thum.jpg';  

       //Cargamos la imagen en formato JPEG  

	$imagen = imagecreatefromjpeg($nombreImagen);  

	//Enviamos la cabecera Content-Type  

	header('Content-Type: image/jpeg');  

	//Enviamos la imagen al navegador  

	imagejpeg($imagen);  

	//Destruimos la imagen  

	 imagedestroy($imagen);  
}

la pagina que invoca el usuario

Código:
<body>



<table style="width: 100%" border="1">
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td><img src="http://dominiolocal/curl_remoto.php" /></td>
	</tr>
</table>

</body>

espero sus comentarios

saludos
__________________
gerardo

Etiquetas: curl, dominios
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 21:32.