[Redirecting thread back to the list for the benefit of others.] On 9/22/11 13:38, "Eric" <eric_justin_allan@xxxxxxxxxx> wrote: >So is $_POST["username"][0] appropriate or does that only work >with normal variables? As far as this sort of manipulation goes, $_POST is just like any other variable. Referencing the 0th element of any string will give you the first character, if there is one. (If there isn't one, you'll generate a PHP warning or notice for trying to read out-of-bounds.) >and would this be valid, >$i = 0; >while($_POST["username"][$i] != "\0") It looks like you're trying to treat the string as a C-style string. That won't work in PHP because PHP's strings are not null-terminated. Thus, this will lead to an infinite loop with any strings that don't happen to have the null character somewhere within (and most strings won't). >{ > if($_POST["username"][$i] == "." || $_POST["username"][$i] == "..") This line is not wrong per-se, but nor does it entirely make sense. When you access a string as an array, each element contains one character. Here, you're checking whether each character in turn is a period (fine) or two periods (makes no sense, since one character cannot represent two period characters). What you'd probably want to do is simply remove the second condition, since a check for one period will work just as well if the name contains two periods. That is: if($_POST["username"][$i] == ".") Incidentally, another tip: when comparing against a constant, as you are in both your while() and your if(), place the constant on the left side if the expression rather than the right. That is, write the previous if() like this: if ('.' == $_POST['username']) It might look a little funny, but I assure you, someday, it'll save you a bunch of frustrating debugging time. The reason is that if you mistype the '==' as '=', you'll do an assignment, the value of which is then returned. This has the net effect of 1) quietly changing your variable's value, and 2) making the overall expression always evaluate to true, sending you into the the true part of the conditional branch, well, unconditionally. -- Robert E. Williams, Jr. Associate Vice President of Software Development Newtek Businesss Services, Inc. -- The Small Business Authority https://www.newtekreferrals.com/rewjr http://www.thesba.com/ Notice: This communication, including attachments, may contain information that is confidential. It constitutes non-public information intended to be conveyed only to the designated recipient(s). If the reader or recipient of this communication is not the intended recipient, an employee or agent of the intended recipient who is responsible for delivering it to the intended recipient, or if you believe that you have received this communication in error, please notify the sender immediately by return e-mail and promptly delete this e-mail, including attachments without reading or saving them in any manner. The unauthorized use, dissemination, distribution, or reproduction of this e-mail, including attachments, is prohibited and may be unlawful. If you have received this email in error, please notify us immediately by e-mail or telephone and delete the e-mail and the attachments (if any). -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php