Ajuda com encurtador!

  • Autor Autor loquitomed
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
L

loquitomed

Curioso
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Hola amigos, espero y me puedan ayudar.

Resulta que segui el tutorial: http://forobeta.com/tutoriales/116748-crear-acortador-de-url-php-y-mysql.html

Aqui esta: http://www.epicenterbass.com/descarga/

Se acorta bien y todo pero al momento de abirir el link acortado solo se queda pantalla en blanco miren:

http://www.epicenterbass.com/descarga/de56675

Revise el error_log y aparece esto:

Inserir CODE, HTML ou PHP:
[21-Mar-2014 18:46:45 America/New_York] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/vkndnmty/public_html/descarga/db.php:9) in /home/vkndnmty/public_html/descarga/go.php on line 16

La verdad alli no se, asi esta mi archivo go.php

Inserir CODE, HTML ou PHP:
<?php
@set_time_limit();
    include('db.php');
    include('noin.php');

    $SEC = new secure();
    $SEC->secureGlobals();

    //verificamos si el hash existe en nuestra base de datos
    $SQL = @mysql_query("SELECT * FROM `acortador` WHERE `char`='".trim($_GET['id'])."'");
    $ROW = @mysql_fetch_array($SQL);

    //Si existe redireccionamos
    if($ROW['url']!=""){
        _suma($_GET['id']);
        header('location: '.$ROW['url']);
        die();
    }else{
        //sino existe el hash en nuestra BD redireccionamos al index de nuestro sitio
        header('location: http://urlacortador.com/');
        die();
    }

    //funcion encargada de sumar una visita al hash
    function _suma($U){
        mysql_query("UPDATE `acortador` SET stat=(stat+1) WHERE `char`='".$U."'");
    }
?>

Si me pudieran ayudar a echarlo andar se los agradeceria mucho 🙂
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Al parecer las cabeceras ya se han enviado desde el archivo db.php. El mensaje de advertencia puede aparecer porque se está mostrando algo antes de la llamada a la función header(). Revisa que no se impriman caracteres en blanco ni nada antes de esa llamada, ya que por lo que veo en esta imagen, hay como mínimo dos caracteres. Puede que los hayas colocado antes de <?php o después de ?>.

También te recomiendo no incluir ?> al final de cada archivo. Hazlo solamente si vas a incluir HTML después.
 
Hola, gracias por responder.

Ya revise que no aiga espacios o caracteres <?php o después de ?> y no hay nada, todo esta bien. Casi no entiendo muy bien este problema :fatigue:

Que puede ser?
 
Prueba a poner encima al principio del codigo y/o encima de header('location: '.$ROW['url']); el siguiente codigo: ob_start();
 
Como te dijeron antes, ya has enviado dos bytes (dos espacios) antes de llegar a la redireccion:

Inserir CODE, HTML ou PHP:
$ curl [url]http://www.epicenterbass.com/descarga/de56675[/url] > xxx
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     2  100     2    0     0      2      0  0:00:01 --:--:--  0:00:01     4
$ wc xxx
      0       0       2 xxx

Y el log te dice donde está (probablmente) el problema:

Inserir CODE, HTML ou PHP:
output started at /home/vkndnmty/public_html/descarga/db.php:9

Mira que ese php no tenga espacios al principio, y mira especialmetne la linea 9
 
Voltar
Topo