問題は、変数$Q おそらく$station1で渡された値が原因で、有効な値が含まれていません データベースに存在しません。 CIは、少なくとも空の引用符で囲まれた文字列を使用することでこれに対抗すると思いましたが、明らかにそうではありません。
その$Qを検証する必要があります where()に渡す前に適切な値を保持します 。たとえば、別のnum_rows() チェックすると、最初のクエリで何かが見つかったかどうかがわかります。
また、$Qからフィールドデータを渡す必要があります 、オブジェクトだけではありません。したがって、あなたの場合、$Q->row()->Zone 。