Hi all, I'm sure this must be me, but I can't see what I am doing
wrong so thought I would post here.

I am trying to set up a posts/tags kind of thing with a site I am
building which stores presentations. So there can be tags associated
with a presentation.

I didn't want a multiple select box for the tags as there could be
hundreds, and that wouldn't allow for adding new ones.

So I have a text field, that the user can enter the keywords,
separated with a coma.

In my controller, I first remove any entries in the presentations_tags
table, so that it is not associated with any tags.

Then I split the value of the field, trim off white space, then loop
through each tag (case insensitive) that has been submitted.

If the tag exists, I update the presentations_tags table with the
id's.

If the tag does not exist, I first insert it in to the tags table,
then using getLastInsertId() I proceed to update the
presentations_tags table.

Everything works, and does what I am asking it to, except that in the
case of a tag not existing, it ALSO adds 4 entries for each tag.

These entries always have the id of the tag in the tag_id field, but
they also have the following presentation_id's:

0, 2, 3, 10

All 4 of these are additional to the desired result, and they always
follow this pattern. If I add two new tags, I have 8 added, 4 for each
tag, and they all follow the above pattern.

This is the code I am using for when the tag isnt found:

------------------------------- CODE
-----------------------------------

//insert new tag
$this->data['Tag']['name'] = $tag;
$this->Tag->create();
$this->Tag->save($this->data);

//get insert id
$last_insert_id = $this->Tag->getLastInsertId();

//update presentations_tags
$this->data['PresentationsTag']['presentation_id'] = $id;
$this->data['PresentationsTag']['tag_id'] = $last_insert_id;

$this->PresentationsTag->create();
$this->PresentationsTag->save($this->data);

------------------------------------------------------------------------------

Has this been experienced before? I cant see any reason for it.

As a sidenote, I have created a model for the presentations_tags table
so that I can achieve what I am after.

Any help would be greatly appreciated.

Many Thanks

Patrick
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
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