Mmm. I'm still not following and not completely convinced.

Changing "echo alarmLightYMD();" to simply "alarmLightYMD();" in the bottom
function doesn't print anything in the table cell at all (for the first test
case).

While your idea at first makes sense and does seem like a newbie mistake
(and you are correct, I do have nested "echo" statements come to think of
it). What I don't get is why it's not consistent. "Expanding" the relevant
lines, it should be like this:

echo "<TD>".(echo "<IMG SRC='images/light_red.gif'>")."</TD>";

Which fails, and the other line would be (which works):

<TD><?php echo (echo "<IMG SRC='images/light_red.gif'>"); ?></TD>

In my book, they're both double echoing the output if you will... Are you
with me on that?

So again, why does the second one work and the first one doesn't?

> -----Original Message-----
> From: Philip Hallstrom [mailto:[EMAIL PROTECTED] 
> Sent: Friday, April 04, 2003 5:20 PM
> To: Daevid Vincent
> Cc: [EMAIL PROTECTED]
> Subject: [PHP] Re: Found a bug in 4.2.3 re: <TD> and echo vs. <?php?>
> 
> 
> It's a coding error... at least I think so.
> 
> change alarmLightMySQL just return the results not "echo" 
> them... echoing
> them doesn't make much sense inside another echo statement...
> 
> On Fri, 4 Apr 2003, Daevid Vincent wrote:
> 
> > Here, try this bullshit...
> >
> > I can't upgrade to a more recent version as I'm not in 
> control of the
> > server, but I've tried it with both 4.1.2 and 4.2.3 on 
> linux with a RH
> > install. Can anyone confirm or dispute this bug exists in 
> later versions?
> >
> > How does a parsing error like this go un-noticed for so long?
> >
> > Obviously I took out all the interesting stuff in the page 
> and so that can't
> > be blamed. This is about as bare skeleton test case as you can get.
> >
> > *sigh*
> >
> > ------------snip----------------
> >
> > <?php
> >     function alarmLightYMD()
> >     {
> >             return "<IMG SRC='images/light_red.gif'>";
> >     }
> >
> >     function alarmLightMySQL()
> >     {
> >             echo alarmLightYMD();
> >     }
> > ?>
> > <html>
> > <head>
> >     <title>FUCKED UP PHP Bug #1234170238741023</title>
> > </head>
> >
> > <body>
> > PHP Version 4.1.2<BR>
> > PHP Version 4.2.3<BR>
> > <BR>
> > Why the FUCK doesn't this work!!!!
> > <P>
> > <TABLE BORDER="1">
> > <?php
> > for ($i = 0; $i < 10; $i++ ) {
> >      echo "<TR>";
> >             echo "<TD>".alarmLightMySQL()."</TD>";
> >             echo "<TD>this fails!</TD>";
> >      echo "</TR>";
> > }
> > ?>
> > </TABLE>
> >
> > <HR>
> >
> > YET THIS DOES!
> > <P>
> > <TABLE BORDER="1">
> > <?php for ($i = 0; $i < 10; $i++ ) { ?>
> >      <TR>
> >             <TD><?php echo alarmLightMySQL(); ?></TD>
> >             <TD>this works</TD>
> >      </TR>
> > <?php } ?>
> > </TABLE>
> > </body>
> > </html>
> >
> > ------------snip----------------
> >
> >
> >
> > "Ezekiel 25:17. The path of the righteous man is beset on 
> all sides by the
> > inequities of the selfish and the tyranny of evil men. 
> Blessed is he who in
> > the name of charity and goodwill shepherds the weak through 
> the valley of
> > darkness, for he is TRULY his brother's keeper and the 
> finder of lost
> > children. And I will strike down upon thee with GREAT vengeance and
> > FU-U-U-URIOUS anger, those who attempt to poison, and 
> destroy my brothers!
> > And you will KNOW my name is the Lord, when I lay my 
> vengeance upon thee!"
> >
> >
> > --
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 


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

Reply via email to