Re: PHP - Web/list Question...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9 Nov 2008, at 20:30, Robert Cummings wrote:
On Sun, 2008-11-09 at 20:16 +0000, Stut wrote:
On 9 Nov 2008, at 18:37, Robert Cummings wrote:
On Sun, 2008-11-09 at 18:22 +0000, Stut wrote:
On 9 Nov 2008, at 18:14, Robert Cummings wrote:
On Sun, 2008-11-09 at 18:00 +0000, Stut wrote:
On 9 Nov 2008, at 07:16, Robert Cummings wrote:
On Sat, 2008-11-08 at 20:26 -0800, bruce wrote:
I've got a question/issue that I want to bounce off the list.

I have a list that extends over multiple pages. there might be
200
items,
and i don't want to have the items listed on the same page as it
would be
too long. i can break the list up, so i can have it be displayed
over
multiple pages. however, i want the user to select different
items
from the
list. given that the selected items might be over different
pages,
what's
the best way of keeping a running track of the items that have
been
selected??

I could have each page be a form, and do a post/get where i then
keep track
of the selected items from page to page, but that would appear to
get ugly.
i'm looking for pointers to other sites/code that might have
already
implemented this kind of scenario.

thoughts/pointers would be appreciated...

Accumulate them in the session. When done, and before final action
you
could let them view a summary of selected items and allow deletion
of
any entries they don't want.

Unless they're likely to select hundreds of items I'd either go
with a
persisted GET var or a cookie. No need to drag server-side storage
into this.

Well he did say he had multiple pages. Maybe he's only displaying 5
per
page though. Still, sessions are easier to manage than GET vars
since
you don't need to append them to every form action URL to accumulate
them. Session is managed transparently by PHP in most cases an
amounts
to the approximate overhead of an include.


Seriously? You'd rather use sessions than explode, modify and implode
an array of numbers on each request? You really see that as a
valuable
developer time-saver?

The mind boggles, but as I've said before and probably will again
it's
always a personal choice, I'm just suggesting alternatives.

Depends on the situation really. I'd really not restrict myself in an environment where there is sufficient possibility for which X numbers
whose cumulative digits could easily break the 1024 byte lower bound
for
GET requests. How many digits are these IDs? How man can be chosen?
It's
not unreasonable to select pages of some kind of item. It would only
take 200 averaging 5 digits to break the limit. The solution here is
simple in both respects, and using sessions really doesn't strike me
as
using a sledgehammer.

I don't disagree, I was just pointing out that sessions as implemented by PHP are not the only answer to data storage between requests and in
a lot of cases are overkill. It's a decision you have to base on the
requirements and expected future developments of a project.

I firmly believe the advice given on this list should provide choices
rather than dictate methods. There's always more than one way to do
something.

I absolutely agree, I certainly don't think what you proposed is in any
way wrong, but *my* preference for this particular problem would
probably be to use the session. I avoid the session as much as possible since then you can't provide a link to someone via email to bring up the
same context as you had, but in this case that seems an unlikely
scenario, whereas the possibility of accumulating many items is quite
likely given the items will be paged.

Agreed, but IMHO lack of URL-sharing is just one of many reasons to avoid sessions if possible.

Taking further context though on my stream of responses... you did say:

   Seriously? You'd rather use sessions than explode, modify and
   implode an array of numbers on each request?

This suggests you thought my particular opinion to be ludicrous ;) As
such, I felt inclined to more strongly defend my stance.

I should've explained the context of that reply. I was specifically referring to your assertion that "sessions are easier to manage". They are slightly easier than most alternatives for the developer, but they can quickly become a nightmare for the sysadmin.

-Stut

--
http://stut.net/

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux