Re: Sometimes I wonder why I even started programming...
| From: | Stut | Date: | Wed, 27 Feb 2008 22:33:10 +0000 |
| Subject: | Re: Sometimes I wonder why I even started programming... | ||
| References: | 1 2 3 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-270467@lists.php.net to get a copy of this message | ||
On 27 Feb 2008, at 22:16, Jason Pruim wrote:
On Feb 27, 2008, at 5:12 PM, Daniel Brown wrote:Nope, only return $table will get processed since that ends execution of the function.On Wed, Feb 27, 2008 at 4:55 PM, Jason Pruim <japruim@raoset.com> wrote:so the "return $table;" line doesn't ever get processed?As soon as a function reaches afunction authentication($user, $pass, $authenticated, $table){// Keep in mind, PASSWORD has meaning in MySQL // Do your string sanitizing here // (e.g. - $user = mysql_real_escape_string($_POST['user']);) $salt = "salt"; $salt1 = $salt; $salt1 .= $pass;$password = md5("$salt1"); $loginQuery = "SELECT * FROM current WHERE loginName='".$user."'AND loginPassword='".$password."' LIMIT 0,1;";$loginResult = mysql_query($loginQuery) or die("Wrong data suppliedor database error" .mysql_error());while($row1 = mysql_fetch_array($loginResult)) { $_SESSION['user'] = $row1['loginName']; $_SESSION['loggedin'] = "YES"; $authenticated = "true"; $table = $row1['tableName'];} return $table; return $authenticated; } \returnstatement, it returns that data and exits, so the secondreturnis never processed.
Is there anyway to make it get processed? :) I'm attempting to rewrite code so I don't HAVE to use session variables... Hoping I can make it work :)To return multiple values from a function it's usually best to return an array. There are other ways to do it such as out parameters but returning an array should be sufficient in this case. Replace your two return statements with the following... return array($table, $authenticated); Then call the function like this... list($table, $authenticated) = authentication(blah, blah, blah); -Stut -- http://stut.net/