Hola,
El segundo metodo es erroneo (creo) para hacer lo que tu quieres. Al pasar una URL creo que lo que haces es incluir el HTML generado por la llamada a esa pagina, es decir, lo que te muestra el navegador si pones esa URL.
En el include(), lo que se puede pasar es el path relativo o el absoluto. Es la ruta al fichero, por ejemplo, "c:/www/ppweb/includes/archivo.php" si trabajas en windows.
El unico inconveniente de trabajar con paths absolutos, es que si cambia en algun momento la distribucion de directorios por encima del directorio raiz del web, tienes que cambiar esos paths. Por ejemplo, si tu directorio raiz del sitio pasa a ser "c:/w3/ppweb/". Esto se puede evitar usando $_SERVER['DOCUMENT_ROOT'] como parte inicial del path:
Código PHP:
include ($_SERVER['DOCUMENT_ROOT']."/directorio/archivo.php");
Esta constante contiene el path absoluto al directorio raiz de la web.
Espero haber sido de ayuda.