What In the WORLD???
| From: | Ben Ocean | Date: | Fri, 02 Feb 2001 15:43:21 +0000 |
| Subject: | What In the WORLD??? | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-37855@lists.php.net to get a copy of this message | ||
Hi;
Can someone please explain the logic of why this is happening? I moved my server to a different co-location. As a consequence a certain PHP3 script quit working (?). Same server, same config, just quit. Now I'm trouble-shooting it and I've traced the problem thus:
// had to remove this line: if ( $k == "id" && $v != "0" ) { if ( $seatingz == "9" || $aa == $seatingz ) { if ( $colorz == "9" || ( $cc == $colorz || $dd == $colorz || $ee == $colorz )) { if ( $typez == "9" || $gg == $typez ) { if ( $xxxx != $yy ) { // to keep from repeating each table twice $xxxx = $yy; <<< Prior to all of this is a loop defining an array of values from a MySQL table; after it is a loop printing those values in a table. Variables ending in *z* are obtained from the client through a *POST* statement. The value of *9* is a default, meaning the client has not entered a value. As an example, *$aa* is the specific value for *seating* in the table which is called by the MySQL statements for a specific row of data. The line I had to remove was necessary before moving the server for reasons that were and are beyond me. But when I moved the server, that line prevented anything from printing. I removed it, then I discovered that all values established *prior to* the first variable the client inputs (which changes the *z* variables) printed, while those after it didn't. In other words, if the client input a value for *type*, which would correspond to *$gg*, then *$aa* through *gg* printed, but all the values after that didn't! Now, for *some reason* before I moved the server this loop wanted to print two copies of everything, so I put in this $xxxx value stuff in the last *if* statement. That stopped it and it worked fine (i.e., printed just one copy of everything like it was supposed to). While I was trouble-shooting this sucker, I slapped in the declaration of *$xxxx = "";* and I'll be a son-of-a-gun, suddenly the darn thing prints out an ungodly number of the same loop (I currently only have one row in the table as I test it), and after about 20 iterations it starts tossing in the extra values that it had been skipping (e.g., those beyond $gg in the above example), so that after about 100 iterations I have the complete package! What the he*$^%) is going on??? BenO$xxxx = "";