Re: nesting JS in echo's



Seni Seven <OneWhoLovesYou@xxxxxxxxxxxxxxx> wrote in comp.lang.php:

Jerry Stuckle <jstucklex@xxxxxxxxxxxxx> wrote in comp.lang.php:

Seni Seven wrote:
Jerry Stuckle <jstucklex@xxxxxxxxxxxxx> wrote in comp.lang.php:

Request-1 wrote:
"Jerry Stuckle" <jstucklex@xxxxxxxxxxxxx> wrote in message
news:gf2t4m$inr$1@xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Request-1 wrote:
hi folks,

html coder here, new and terrified * of php!!
aaaaaa!

i'm trying to bury a JS script to rotate a photo, in a page i
converted from html to php.
the conversion went well, it was to use a php session cookie to
stop the repeating of an embedded video file on a per session
basis; i amended the php code to display a still pic if the
session cookie value was nil.

worked fine.

thought I'd try integrating a tested and true JS image random
rotator script into the echo command, but the problem was the
syntax of the single quotes and double quotes needed in the
doc.write and variable sequences in the JS.

i tried escaping the double quotes (my echo used double quotes),
but to no avail.

here's the JS CODE i use in the tail end of my PHP. "picnumber"
is the variable holding the randomly assigned number that
chooses the picture.

any help much appreciated..


++++++++++++++++

{ echo "

<script language='JavaScript1.2'>
<!-- begin
document.write(\"'<img src='images/swap/'+ picnumber +
'.jpg'>\");
// end -->
</script>
"; }

++++++++++++++++++++++++++

thanks
You have an extra single quote before <img ...


Hi Jerry,

the single quote is actually necessary in JS when you're using
document.write to add strings in series (is it called
"concatenating" or something?). so the <img src...> statement was
broken down into 3 seperate stings to be re-joined - all within
the double-quote nested doc.write stmt. my mistake was to leave
the image path in single quotes; instead I tried "escaped double
quotes" to complete the image path, like so,

{ echo "<script language='JavaScript1.2'>\n";
echo "<!-- begin \n";
echo "document.write('<img src=\"images/swap/' + picnumber
+'.jpg\"
width=\"320\" height=\"240\" border=\"0\" alt=\"Fitness Training
Image\">');\n";
echo "// end -->\n";
echo "</script>"; }


but no avail. still no pic shows up.

anyway. i get really confused with all the nested stuff and
single-double quotes. i may try that "heredoc" thing that Thomas
suggested. I'll need a couple of beers first. Friday night on
Javascript? Bad!


BTW - you don't need quotes around numeric values like your width,
height and border. Only non-numeric data.

Are you talking about generating strict (X)HTML? Quotes must be on
all element attributes in that case, regardless of attribute value
type.



1. There is no indication this is XHTML.
2. You shouldn't use XHTML for web pages - it's not well supported by
some browser, not the least being IE 6 and 7.

Actually, many can and do use XHTML for web pages.

I looked at this page successfully using IE7. The web document was
written by NONE OTHER THAN BY THE W3 Consortium itself, the standards-
setting (they use the term "recommendations" modestly instead of
"standards") in strict XHTML. Go figure.

[neglected to give the STRICT XHTML-indicated page]

http://www.w3.org/MarkUp/2004/xhtml-faq


There are various documents that can be googled that specify solutions
wo using XHTML for broken browsers like Internet Explorer, such as
using an XML style*** also to get around problems with showing XHTML
in standards-violating, never-get-it-right HTTP clients like Internet
Explorer. This is not rocket science.


HTML does NOT require quotes on numeric attributes.

Actually the HTML 4 recommendation does not assert in any way
whatsoever that quotes can be omitted for attributes that have numeric
values. It does allow for their omission, but recommends they always
be used. There is no indication about whether this recommendation
applies to the various levels of HTML: strict, transitional,
frameset.

http://www.w3.org/TR/html4/intro/sgmltut.html#attributes

Here is one individual's take on SCRUPULOUSLY quoting all attribute
values in HTML, which MUST be quoted in every case in XHTML:

http://www.cs.tut.fi/~jkorpela/qattr.html

He is or was a regular (long-time) and, I believe, respected
contributer to the HTML usage newsgroups.




.


Quantcast