Latoune

CakePHP doesnt use 0 as an index when it knows the model's name.

$var[0] would be reserved for values if you are using  custom query.

For example I use sql to actually find an average product rating, and
return that along with name and such.  The score is under the 0 index
with my other custom fields

$var[0][custom_field] in addition to $var[Product][name]




On Jul 2, 4:20 am, Latoune - Newbie <[EMAIL PROTECTED]> wrote:
> Thanks for this feedback. After two days I found the solution:
>
>             if ($this->Post->findByTitle($this->data['Post']['title']))
>                     {
>                                 $var = 
> $this->Post->findByTitle($this->data['Post']['title']);
>                                 $this->redirect('/posts/view/' . 
> $var['Post']['id']);
>                         }
>
> and it worked.
>
> I also did:
>         $var = $this->Post->findByTitle($this->data['Post']['title']);
>                 if (!empty($var))
>                 {
>                         $this->redirect('/posts/view/' . $var['Post']['id']);
>                 }
>
> which works too but is cleaner. please note that
>
> $var['Post']['id'] works
> $var[0]['id'] does not work.
>
> If someone can let me know why? it woudl be appreciated.
>
> Thanks
>
> On Jul 2, 12:09 am, schneimi <[EMAIL PROTECTED]> wrote:
>
> > $var[0]['id'] is the correct syntax for the array you posted, are you
> > sure it is really the content of $var? Not rather $var['Post'][0]
> > ['id']?
>
> > Btw, you shouldn't do the findByTitle twice, this is better:
>
> > $var = $this->Post->findByTitle($this->data['Post']['title']);
>
> >  if      (!empty($var))
> >  {
> >          $this->redirect('/posts/view/' . $var[0]['id']);
> >  }
>
> > Hope this helps,
>
> > Michael
>
> > On 1 Jul., 20:41, Latoune - Newbie <[EMAIL PROTECTED]> wrote:
>
> > > Hi,
> > > I am a newbie so please sorry if the question seems basic but I cannot
> > > find this solution:
>
> > > I have created a Posts table with the following attributs:
> > > id,
> > > title,
> > > bodytext,
> > > etc.
>
> > > I now want to test the findby<fieldame> function so I create a
> > > function called         "findbytitle" in my posts_controller.php script. 
> > > This
> > > function takes in a form input to retrieve the row in the table that
> > > has the same title. I want then to call a "view" with the id matching
> > > the title. I did:
>
> > > ...
> > > function findbytitle($id = null)
>
> > > if      ($this->Post->findByTitle($this->data['Post']['title']))
> > > {
> > >         $var = $this->Post->findByTitle($this->data['Post']['title']);
> > >         $this->redirect('/posts/view/' . $var);
>
> > > }
>
> > > ...
>
> > > but it does not work
>
> > > $var is an array. in my case it is:
> > > Array ( [0] => Array ( [id] => 3 [title] => Title strikes back [body]
> > > => This is really exciting! Not. [created] => 2008-06-29 21:35:37
> > > [modified] => 2008-06-30 22:00:25 ) )
>
> > > I then tried:
> > > ...
> > > function findbytitle($id = null)
>
> > > if      ($this->Post->findByTitle($this->data['Post']['title']))
> > > {
> > >         $var = $this->Post->findByTitle($this->data['Post']['title']);
> > >         $this->redirect('/posts/view/' . $var[0]['id']);
>
> > > }
>
> > > ...
>
> > > but I got:
>
> > > Notice: Undefined index: 0 in C:\Program Files\EasyPHP 2.0b1\www\cake
> > > \app\controllers\posts_controller.php on line 66
>
> > > I do not know how to retrieve the value of the id from the array.
>
> > > I am struggling. Can someone tell mw what the right syntax is or what
> > > instructions I should be using!
>
> > > Many thanks
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to