email и user_id никога няма да работят за издателя:тъй като функцията за влизане връща "pub_id" и "cemail". За да коригирате това, можете да промените SQL на:
$q = "SELECT pub_id as user_id, company_name, cemail AS email FROM
pub WHERE cemail='$e' AND password=SHA1('$p')";