How is $\text{PCP}[O(\log n),O(1)]$ NOT P?
A language $L$ is in $\mathsf{PCP}(r(n),q(n))$ if there is a randomized polytime algorithm $V(x,y)$ which acts as follows:


The algorithm is given $r(n)$ random bits.
Given these random bits, it chooses (deterministically) $q(n)$ locations in $y$.
It reads $y$ at these locations, and based on that, decides whether to accept or reject.


Furthermore, $V$ satisfies the following two conditions:


If $x \in L$ then there exists $y$ such that $\Pr[V(x,y) \text{ accepts}] = 1$.
If $x \notin L$ then for any $y$, $\Pr[V(x,y) \text{ accepts}] \leq 1/2$.


Let $n = |x|$. Since $V$ uses only $r(n)$ random bits and reads at most $q(n)$ bits of $y$, at most $2^{r(n)} q(n)$ bits of $y$ can potentially be read. when $r(n) = O(\log n)$ and $q(n) = O(1)$, this means that at most polynomially many bits are read from $y$, and so we can assume that $y$ has polynomial length.

Every language in $\mathsf{PCP}(O(\log n), O(1))$ is in $\mathsf{NP}$. Indeed, given $y$, we can compute $\Pr[V(x,y)\text{ accepts}]$ in polynomial time (since there are only polynomially many choices for the random bits). However, the language is not obviously in $\mathsf{P}$, since there are exponentially many choices for $y$.