Foros del Web » Programando para Internet » PHP »

Ayuda script de link descarga !!!

Estas en el tema de Ayuda script de link descarga !!! en el foro de PHP en Foros del Web. Resulta que tengo un archivo ipn.php de paypal en el cual cuando un usuario paga pues le crea una cuenta en una base de datos, ...
  #1 (permalink)  
Antiguo 29/01/2010, 19:19
tukymix
Invitado
 
Mensajes: n/a
Puntos:
Ayuda script de link descarga !!!

Resulta que tengo un archivo ipn.php de paypal en el cual cuando un usuario paga pues le crea una cuenta en una base de datos, lo vi en un tutorial de internet que aun estara por ahi; resulta que lo que kiero acer es otra cosa y es que dicho script en vez de crearle la cuenta, que le envie un email a su correo con el link de una decarga directa de dicho archivo que tengo yo en una carpeta en mi servidor y metido el nombre en la base de datos, pues eso que el link lo descargue el archivo y que a su vez despues de ser descargado le cambie el nombre o algo para que no se pueda volver a descargar con ese link; alguien me podria acer algo asi o decirme como lo podria acer? Vamos en resumen es que dicho script le envie 1 email a su correo con un link de descarga directa a un archivo que tengo metido en una carpeta y base de datos, y que no pueda volverlo a descargar hasta que no vaya a la pagina de pago y vuelva a pagar. Si no me e explicado bien decirmelo y o detallare aun mejor el problema, gracias de antemano !!!!
  #2 (permalink)  
Antiguo 29/01/2010, 20:03
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 9 meses
Puntos: 27
Respuesta: Ayuda script de link descarga !!!

Podrias hace algo asi
Código PHP:
#archivo : descarga.php
#la varible $datos contiene los datos del usuario que se extrae de la base
# el campo file de la base deberia tenes la ruta dentro del directorio de descarga.
# el campo estado debe ser 1 por dafault
if( $dato[estado]==){      
      if (!isset(
$dato['file']) || empty($dato['file'])) {
          exit();
      }
      
#carpera de descarga
      
$root "contenedor/";
      
$file basename($dato['file']);
      
$path $root.$file;
      
$type '';
      if (
is_file($path)) {
          
$size filesize($path);
          if (
function_exists('mime_content_type')) {
              
$type mime_content_type($path);
          } else if (
function_exists('finfo_file')) {
              
$info finfo_open(FILEINFO_MIME);
              
$type finfo_file($info$path);
              
finfo_close($info); 
          }
          if (
$type == '') {
              
$type "application/force-download";
          }
 
         
header("Content-Type: $type");
          
header("Content-Disposition: attachment; filename=$file");
          
header("Content-Transfer-Encoding: binary");
          
header("Content-Length: " $size);
          
# descarga archivo
          
readfile($path);

          
##################
          # Aca actualizas la base.
          # Haces un update del campo de estado ( de 1 a 0 ) ;
          ##################

      
} else {
          die(
"El archivo no exite. ");
      }
}
else{  
    echo 
' El archivo ya se descargo';

Espero que te sirva
  #3 (permalink)  
Antiguo 29/01/2010, 20:06
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 9 meses
Puntos: 27
Respuesta: Ayuda script de link descarga !!!

Cita:
Iniciado por luis010182 Ver Mensaje
Podrias hace algo asi
Código PHP:
#archivo : descarga.php
#la varible $datos contiene los datos del usuario que se extrae de la base
# el campo file de la base deberia tenes la ruta dentro del directorio de descarga.
# el campo estado debe ser 1 por dafault
if( $dato[estado]==){      
      if (!isset(
$dato['file']) || empty($dato['file'])) {
          exit();
      }
      
#carpera de descarga
      
$root "contenedor/";
      
$file basename($dato['file']);
      
$path $root.$file;
      
$type '';
      if (
is_file($path)) {
          
$size filesize($path);
          if (
function_exists('mime_content_type')) {
              
$type mime_content_type($path);
          } else if (
function_exists('finfo_file')) {
              
$info finfo_open(FILEINFO_MIME);
              
$type finfo_file($info$path);
              
finfo_close($info); 
          }
          if (
$type == '') {
              
$type "application/force-download";
          }
 
         
header("Content-Type: $type");
          
header("Content-Disposition: attachment; filename=$file");
          
header("Content-Transfer-Encoding: binary");
          
header("Content-Length: " $size);
          
# descarga archivo
          
readfile($path);

          
##################
          # Aca actualizas la base.
          # Haces un update del campo de estado ( de 1 a 0 ) ;
          ##################

      
} else {
          die(
"El archivo no exite. ");
      }
}
else{  
    echo 
' El archivo ya se descargo';

Espero que te sirva
Me olvide el link que le mandas al usuario por mail seria algo asi.
descarga.php?id_usuario=3333
El cual te sirve para consultar los datos del usuario.
  #4 (permalink)  
Antiguo 30/01/2010, 05:35
tukymix
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda script de link descarga !!!

muchas gracias jejej, as sido de gran ayuda pero perdoname pero no me he explicado bien. Molaria acer un script en el cual pueda un usuario descargarse un archivo pagando via paypal, que sea sencillo, tu sabras explicarme eso tete? o tampoco sabes como conseguir eso, el proceso es, que pinche en el boton de pago paypal, pague y una vez pagado le envie a su email un correo con el link de la descarga, y ya esta solamente eso, eso como se podria acer ? de todas formas me apuntado tu script, gracias por adelantado
  #5 (permalink)  
Antiguo 30/01/2010, 06:02
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: Ayuda script de link descarga !!!

mira, tienes que modificar el script de paypal tal como te dice luis y, primero, guardar en la base de datos un registro de operación, luego enviar la url de descarga de a un archivo PHP con la ID de la operación como parámetro al stilo: descarga.php?operacion=34154.

Entonces cuando tu cliente hace click en el link que descarga.php revise la base de datos y autorice la descarga o la deniegue.

Si mandas el link directamente nada le impide a tu visitante anotar el link y descargarlo cuantas veces quiera o pasarselo a otros que lo podrán descargar sin pagar.

Etiquetas: link, descargas
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:04.