Foros del Web » Programando para Internet » PHP »

Curl me cambia las urls

Estas en el tema de Curl me cambia las urls en el foro de PHP en Foros del Web. Hola, soy novato en php, hice un script que recoge las urls de un directorio determinado (mp3s), lo hice con curl, el problema es que ...
  #1 (permalink)  
Antiguo 23/04/2010, 09:30
 
Fecha de Ingreso: febrero-2004
Mensajes: 19
Antigüedad: 20 años, 2 meses
Puntos: 0
Curl me cambia las urls

Hola, soy novato en php, hice un script que recoge las urls de un directorio determinado (mp3s), lo hice con curl, el problema es que me cambia la url original por localhost ej.

la url original es:

http://clanlos300.com/pktcanario/musica/30%20Seconds%20To%20Mars%20-%20Attack.mp3

pero cuando me la devuelve curl es:

http://localhost/30%20Seconds%20To%20Mars%20-%20Attack.mp3

no se si se entiende.
  #2 (permalink)  
Antiguo 23/04/2010, 09:36
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Curl me cambia las urls

Bueno sin ver código solo puedo especular. Entiendo que la dirección de donde estás tomando la información está declarada con direcciones relativas. Es decir no tiene la ruta absoluta declarada (http:/ /nombreDelDominio.com). Por lo tanto, cuando tu usas cURL el va a traer la información de la página tal cual está y eso va a traer el enlace con rutas relativas y como cURL arrastró la información hacia tu computadora, es como si estuviera ejecutando el código en tu computadora. Necesitarias modificar los enlaces para que al pulsar en ellos vaya directo a la página que corresponde. Puedes colocar una etiqueta llamada <base ..../> para indicar una ruta absoluta para los enlaces.
__________________
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 23/04/2010, 09:45
 
Fecha de Ingreso: febrero-2004
Mensajes: 19
Antigüedad: 20 años, 2 meses
Puntos: 0
Respuesta: Curl me cambia las urls

Bueno primero que nada muchas gracias.

Entendi lo que me explicastes pero no se como poner una etiqueta, tenes un ejemplo?

Gracias.
  #4 (permalink)  
Antiguo 23/04/2010, 09:47
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Curl me cambia las urls

¿Como que no sabes como poner una etiqueta? Qué es lo que haz hecho. Acuérdate que sigo especulando lo que haz hecho, no te puedo decir mucho.
__________________
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 23/04/2010, 10:08
 
Fecha de Ingreso: febrero-2004
Mensajes: 19
Antigüedad: 20 años, 2 meses
Puntos: 0
Respuesta: Curl me cambia las urls

Como dije recien empiezo, para mi las etiquetas en php son <? y ?>.

Bueno te adjunto lo que hice.

Código:
<?php
	
	$fgc = 1;

function curl($link, $post='0')
	{
	  if($fgc == 1) 
  file_get_contents($link);
  else {
		$ch = curl_init($link);
		curl_setopt($ch, CURLOPT_HEADER, 0);
                curl_setopt($ch, CURLOPT_COOKIE, 1);
		curl_setopt($ch, CURLOPT_COOKIEJAR, "1");
		curl_setopt($ch, CURLOPT_COOKIEFILE, "1");
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
		if($post != '0') {
			curl_setopt($ch, CURLOPT_POST, 1);
			curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
		}
		$page = curl_exec($ch);
		return($page);
		curl_close($ch); }
	}

	?>
	
	<html>
	<body>
	
	<form action="" method="post">
	<p align="center"><textarea rows="10" cols="50" name="links"></textarea><br /></p>
	<p align="center"><input type="submit" value="Check Links" name="submit" /> </p>
	</form>

	<div align="center">
	  <?php
	$link = @$_POST['links'];
	$page = curl($link);
	echo $page;
	

	?>
	</div>
	</body></html>
Igual ya tengo una idea mas o menos.

Saludos.
  #6 (permalink)  
Antiguo 23/04/2010, 10:15
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Curl me cambia las urls

Bueno, primero, la variable $fgc no la va a reconocer la función porque está afuera y no es una variable global. Por lo tanto file_get_contents nunca se va a ejecutar. Segundo, conforme al código, no vas a poder añadir correctamente base porque no haces nada como tal, si no que usas cURL y ya esta. Vas a tener que usar expresiones regulares para poder entonces ver los enlaces y añadirle entonces la dirección absoluta.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 23/04/2010, 10:39
 
Fecha de Ingreso: febrero-2004
Mensajes: 19
Antigüedad: 20 años, 2 meses
Puntos: 0
Respuesta: Curl me cambia las urls

Correcto, es que voy probando, ahora ya se que me tengo que guardar la url ingresada en el formulario y luego agregarsela a los links.

Muchas gracias.

Etiquetas: curl, url, cambios
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 10:25.