Note that there are some explanatory texts on larger screens.

plurals
  1. POWhy am I receiving undefined index errors using this query
    primarykey
    data
    text
    <p>I'm receiving an undefined index error when I use this query.</p> <pre><code> $t=date('y-m-d'); $q = Doctrine_Query::create() -&gt;from('PetManager_Model_kennelbooking k') -&gt;leftJoin('k.PetManager_Model_Kennelledpets t') -&gt;leftJoin('t.PetManager_Model_Pets p') -&gt;leftJoin('p.PetManager_Model_Breeds b') -&gt;leftJoin('p.PetManager_Model_Behaviour e') -&gt;where('k.srtDate &lt; ?',$t) -&gt;andWhere('k.edDate &gt; ?',$t) -&gt;andWhere('t.bookingID=k.kennelbookingID') -&gt;andWhere('t.pet=p.petID') -&gt;orderBy('k.kennelNumber'); $result = $q-&gt;fetchArray(); </code></pre> <p>In my view I printed out the contents of $result and I get the following output.</p> <pre><code>Array ( [kennelbookingID] =&gt; 19 [client] =&gt; 53 [srtDate] =&gt; 2011-06-03 [edDate] =&gt; 2011-06- 05 [service] =&gt; 1 [kennelNumber] =&gt; 1 [kennelapointstatus] =&gt; 1 [notes] =&gt; Dont feed after 8pm [PetManager_Model_Kennelledpets] =&gt; Array ( [0] =&gt; Array ( [bookingID] =&gt; 19 [pet] =&gt; 41 [PetManager_Model_Pets] =&gt; Array ( [petID] =&gt; 41 [owner] =&gt; 53 [name] =&gt; Rover [type] =&gt; 2 [breed] =&gt; 173 [behaviour] =&gt; 3 [gender] =&gt; 1 [size] =&gt; 4 [age] =&gt; 4 [special_requirements] =&gt; Need to be shown equipment before it is used. [microchipNumber] =&gt; [PetManager_Model_Breeds] =&gt; Array ( [breedID] =&gt; 173 [breed] =&gt; Unknown Dog Breed [type] =&gt; 2 ) [PetManager_Model_Behaviour] =&gt; Array ( [behaviourID] =&gt; 3 [behaviour] =&gt; Docile Good With Humans and Animals ) ) ) ) ) 1 </code></pre> <p>EDIT </p> <p>Ok I've changed my query to the following which makes better use of the relationships between the tables. </p> <pre><code> $today=date('y-m-d'); $q = Doctrine_Query::create() -&gt;from('PetManager_Model_Pets p') -&gt;leftJoin('p.PetManager_Model_Breeds b') -&gt;leftJoin('p.PetManager_Model_Behaviour h') -&gt;leftJoin('p.PetManager_Model_Kennelledpets s') -&gt;leftJoin('s.PetManager_Model_Kennelbooking k') -&gt;where('s.bookingID=k.kennelbookingID') -&gt;andWhere('p.petId=s.pet') -&gt;andwhere('k.srtDate &lt; ?',$today) -&gt;andWhere('k.edDate &gt; ?',$today); $result = $q-&gt;fetchArray(); </code></pre> <p>However to get the kennelNumber and notes values of the kennelbooking table to display I'm having to reference them as follows in my view. </p> <pre><code> &lt;td&gt;&lt;?php echo $this-&gt;escape($r['PetManager_Model_Kennelledpets'][0]['PetManager_Model_Kennelbooking']['notes']);?&gt;&lt;/td&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['PetManager_Model_Kennelledpets'][0]['PetManager_Model_Kennelbooking']['kennelNumber']);?&gt; &lt;/td&gt; </code></pre> <p>I'm going to include the code of my view in case this is the cause of the issue.</p> <pre><code> &lt;?php echo '&lt;h2&gt;All kennelled dogs for '.DATE('l jS F Y').'&lt;/h2&gt;';?&gt; &lt;?php if(count($this-&gt;records)):?&gt; &lt;div id="records"&gt; &lt;table&gt; &lt;tr&gt;&lt;td class="key"&gt; Kennel&lt;/td&gt; &lt;td class="key"&gt; Pet &lt;/td&gt; &lt;td class="key"&gt; Breed &lt;/td&gt; &lt;td class="key"&gt; Behaviour &lt;/td&gt; &lt;td class="key"&gt; Requirements &lt;/td&gt; &lt;td class="key"&gt; Notes&lt;/td&gt;&lt;/tr&gt; &lt;?php foreach($this-&gt;records as $r):?&gt; &lt;tr&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['PetManager_Model_Kennelledpets'][0]['PetManager_Model_Kennelbooking']['kennelNumber']);?&gt; &lt;/td&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['name']);?&gt;&lt;/td&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['PetManager_Model_Breeds']['breed']);?&gt;&lt;/td&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['PetManager_Model_Behaviour']['behaviour']);?&gt;&lt;/td&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['special_requirements']);?&gt;&lt;/td&gt; &lt;td&gt;&lt;?php echo $this-&gt;escape($r['PetManager_Model_Kennelledpets'][0]['PetManager_Model_Kennelbooking']['notes']);?&gt;&lt;/td&gt; &lt;/tr&gt; &lt;?php endforeach;?&gt; </code></pre> <p>Am I doing something incorrect in my query or my view to have caused this??</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload