> You had earlier asked the question whether to do things client or server
> side - well in this example, the correct answer is to do it client-side.
> (Yours is a read-only application, where none of the advantages of
> server-side processing applies.)

One thing to take into consideration when weighing the advantages of 
server-side vs. client-side processing, is whether the web app is likely to be 
used on mobile devices.  Douglas Crockford, speaking about the fact that 
JavaScript has become the de fact universal runtime, cautions: "Which I think 
puts even more pressure on getting JavaScript to go fast. Particularly as we're 
now going into mobile. Moore's Law doesn't apply to batteries. So how much time 
we're wasting interpreting stuff really matters there. The cycles count."[1]  
Personally, I don't know enough to know how significant the impact would be.  
However, I understand Douglas Crockford knows a little something about 
JavaScript and JSON.

-- Michael

[1] Quoted in "Coders at Work" by Peter Seibel,  pg. 100

# Michael Doran, Systems Librarian
# University of Texas at Arlington
# 817-272-5326 office
# 817-688-1926 mobile
# do...@uta.edu
# http://rocky.uta.edu/doran/


> -----Original Message-----
> From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of
> Godmar Back
> Sent: Monday, December 05, 2011 5:31 PM
> To: CODE4LIB@LISTSERV.ND.EDU
> Subject: Re: [CODE4LIB] jQuery Ajax request to update a PHP variable
> 
> FWIW, I would not send HTML back to the client in an AJAX request - that
> style of AJAX fell out of favor years ago.
> 
> Send back JSON instead and keep the view logic client-side. Consider using
> a library such as knockout.js. Instead of your current (difficult to
> maintain) mix of PhP and client-side JavaScript, you'll end up with a
> static HTML page, a couple of clean JSON services (for checked-out per
> subject, and one for the syndetics ids of the first 4 covers), and clean
> HTML templates.
> 
> You had earlier asked the question whether to do things client or server
> side - well in this example, the correct answer is to do it client-side.
> (Yours is a read-only application, where none of the advantages of
> server-side processing applies.)
> 
>  - Godmar
> 
> On Mon, Dec 5, 2011 at 6:18 PM, Nate Hill <nathanielh...@gmail.com> wrote:
> 
> > Something quite like that, my friend!
> > Cheers
> > N
> >
> > On Mon, Dec 5, 2011 at 3:10 PM, Walker, David <dwal...@calstate.edu>
> > wrote:
> >
> > > I gotcha.  More information is, indeed, better. ;-)
> > >
> > > So, on the PHP side, you just need to grab the term from the  query
> > > string, like this:
> > >
> > >  $searchterm = $_GET['query'];
> > >
> > > And then in your JavaScript code, you'll send an AJAX request, like:
> > >
> > >  http://www.natehill.net/vizstuff/catscrape.php?query=Cooking
> > >
> > > Is that what you're looking for?
> > >
> > > --Dave
> > >
> > > -----------------
> > > David Walker
> > > Library Web Services Manager
> > > California State University
> > >
> > >
> > > -----Original Message-----
> > > From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of
> > > Nate Hill
> > > Sent: Monday, December 05, 2011 3:00 PM
> > > To: CODE4LIB@LISTSERV.ND.EDU
> > > Subject: Re: [CODE4LIB] jQuery Ajax request to update a PHP variable
> > >
> > > As always, I provided too little information.  Dave, it's much more
> > > involved than that....
> > >
> > > I'm trying to make a kind of visual browser of popular materials from
> one
> > > of our branches from a .csv file.
> > >
> > > In order to display book covers for a series of searches by keyword, I
> > > query the catalog, scrape out only the syndetics images, and then
> > display 4
> > > of them.  The problem is that I've hardcoded in a search for 'Drawing',
> > > rather than dynamically pulling the correct term and putting it into
> the
> > > catalog query.
> > >
> > > Here's the work in process, and I believe it will only work in Chrome
> > > right now.
> > > http://www.natehill.net/vizstuff/donerightclasses.php
> > >
> > > I may have a solution, Jason's idea got me part way there.  I looked
> all
> > > over the place for that little snippet he sent over!
> > >
> > > Thanks!
> > >
> > >
> > >
> > > On Mon, Dec 5, 2011 at 2:44 PM, Walker, David <dwal...@calstate.edu>
> > > wrote:
> > >
> > > > > And I want to update 'Drawing' to be 'Cooking'  w/ a jQuery hover
> > > > > effect on the client side then I need to make an Ajax request,
> > correct?
> > > >
> > > > What you probably want to do here, Nate, is simply output the PHP
> > > > variable in your HTML response, like this:
> > > >
> > > >  <h1 id="foo"><?php echo $searchterm ?></h1>
> > > >
> > > > And then in your JavaScript code, you can manipulate the text through
> > > > the DOM like this:
> > > >
> > > >  $('#foo').html('Cooking');
> > > >
> > > > --Dave
> > > >
> > > > -----------------
> > > > David Walker
> > > > Library Web Services Manager
> > > > California State University
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf
> > > > Of Nate Hill
> > > > Sent: Monday, December 05, 2011 2:09 PM
> > > > To: CODE4LIB@LISTSERV.ND.EDU
> > > > Subject: [CODE4LIB] jQuery Ajax request to update a PHP variable
> > > >
> > > > If I have in my PHP script a variable...
> > > >
> > > > $searchterm = 'Drawing';
> > > >
> > > > And I want to update 'Drawing' to be 'Cooking'  w/ a jQuery hover
> > > > effect on the client side then I need to make an Ajax request,
> correct?
> > > > What I can't figure out is what that is supposed to look like...
> > > > something like...
> > > >
> > > > $.ajax({
> > > >  type: "POST",
> > > >  url: "myfile.php",
> > > >  data: "...not sure how to write what goes here to make it
> > 'Cooking'..."
> > > > });
> > > >
> > > > Any ideas?
> > > >
> > > >
> > > > --
> > > > Nate Hill
> > > > nathanielh...@gmail.com
> > > > http://www.natehill.net
> > > >
> > >
> > >
> > >
> > > --
> > > Nate Hill
> > > nathanielh...@gmail.com
> > > http://www.natehill.net
> > >
> >
> >
> >
> > --
> > Nate Hill
> > nathanielh...@gmail.com
> > http://www.natehill.net
> >

Reply via email to