That part I thought I had straight. For example (of why I thought I had that much straight), regardless of where an include of HTML might be located, whatever references the HTML makes need to be made as though they're being made from the file that does the including.
The problem I had was in making references in PHP and passively assuming that this is everywhere done the same way as it is done in HTML. For example, in HTML if I want to make reference to a JS file I can do so with the method of starting with /, with that symbol meaning the webroot directory in this context, but when I would make reference to a file in PHP (e.g., with an include statement, using defined constants) and if I assumed the initial / symbol meant the webroot, I got some kind of file not found error. In other words, by unthinkingly assuming that PHP referencing worked like HTML referencing in every way, I arrived at the problem I described above. While there's overlap between working PHP and HTML referencing (e.g., the ../ symbol works the same way in both), where the / symbol means the webroot in HTML, in PHP it means my home root on the server.
When you write for the first time, in Chapter 3, the statement
define ('BASE_URI', '/path/to/dir');
a negligent newcomer like me who didn't take your advice and study much PHP before coming to this book passively assumed that the initial / symbol meant exactly like does in HTML. Hence the problem I had. Then the following day, after some distance and rest, I followed that up with showing that I figured out what was wrong and trying to indicate the reason I made the error in the first place.
Now if I just completely misunderstood what you just said in your post, I'll just go slap myself with PHP and MySQL for Dynamic Web Sites 4e.