Primer problema:
No puedes enviar salida al navegador (Encabezados, espacios, saltos de linea, caracteres, etiquetas html, etc.) antes de usar
session_start();; seguramente hay algunos errores pero tal vez tengas desactivada la directiva para mostrarlos, te recomiendo entonces hacer esto:
Código PHP:
Ver original<?php
ini_set ('error_reporting', E_ALL); // Mostrar todos los errores y avisos de PHP header('Content-type: text/html; charset=utf-8'); ?>
Por otra parte, include_once() es util cuando por las condiciones de programacion exista la posibilidad de tratar de incluir dos o mas veces un mismo script, pero aumenta ligeramente el tiempo de procesamiento; si estas seguro de no tener otros includes al mismo archivo entonces solo usa
include 'archivo.php'; de lo contrario, intenta optimizar tu programacion y usa include_once solo cuando sea estrictamente necesario.