www.webdeveloper.com
Results 1 to 6 of 6

Thread: php passing the variable from a function to another function

  1. #1
    Join Date
    Apr 2011
    Posts
    68

    php passing the variable from a function to another function

    i hope you got my point from the title box..

    here's the problem:
    im trying to create a simple login/logout using function.. i have a login.php and function.php

    im trying to do this because i learned that if you use a function into your script.. it wont be messy.

    this is the code for the login.php
    PHP Code:
    <form method="POST" action="function.php">
    <
    table>
    <
    tr><td>Username:</td><td><input type="text" name="user" value=""></td></tr>
    <
    tr><td>Password:</td><td><input type="password" name="pass" value=""></td></tr>
    <
    tr><td><input type="submit" name="login" value="Login"></td></tr>
    </
    table>
    </
    form
    this is the code for the function.php
    PHP Code:
    //for login
    function login(){
    $user=$_POST['user'];
    $pass=$_POST['pass'];

    $sql="select * from account where username='".$user."' AND password='".$pass."'";
    $sql2=mysql_query($sql);

    }

    //pass the $sql2 to the check function 
    function check(){
    login($sql2);
    while(
    $row=mysql_fetch_array($sql2)){
    echo 
    $a=$row['username'];
    echo 
    $b=$row['id'];
    echo 
    $c=$row['password'];
    }
    }
    check(); 

  2. #2
    Join Date
    Nov 2011
    Posts
    64
    Either make the variable as global or get the two functions into a class object

  3. #3
    Join Date
    Aug 2004
    Location
    Ankh-Morpork
    Posts
    19,637
    Just have the login function return the result:
    PHP Code:
    <?php
    //for login
    function login() 
    {
        
    $user $_POST['user'];
        
    $pass $_POST['pass'];
        
    $sql "select * from account where username='" $user "' AND password='" $pass "'";
        
    $sql2 mysql_query($sql);
        return 
    $sql2// <<------------<<<<<<<<<
        
    }
    //pass the $sql2 to the check function
    function check() 
    {
        
    $sql2 login(); // <<----------<<<<<<<<<<
        
    while ($row mysql_fetch_array($sql2)) 
        {
            echo 
    $a $row['username'];
            echo 
    $b $row['id'];
            echo 
    $c $row['password'];
        }
    }
    check();
    PS: you should probably add some defensive coding in the second function to make sure the returned value is not false. I would avoid using "global" in pretty much any case I can imagine, but putting this into a class and going object-oriented is a good idea (if you have the time to learn it right and not just throw a bunch of procedural functions into a class container).
    Last edited by NogDog; 04-27-2012 at 09:52 AM.
    "Please give us a simple answer, so that we don't have to think, because if we think, we might find answers that don't fit the way we want the world to be."
    ~ Terry Pratchett in Nation

    eBookworm.us

  4. #4
    Join Date
    Apr 2011
    Posts
    68
    sorry but i'm just a newbie in using function.. anyway after researching i did figured out on how to fix the problem.. i just use this reference function to get my desired output... but the problem is...

    PHP Code:
    //for login

    function login(&$user,&$pass){
    $user;
    $pass;
    }
    login($a=$_POST['user'],$b=$_POST['pass']);
    echo 
    $a,"<br>";
    echo 
    $b,"<br>"
    i get this error
    PHP Code:

    Strict Standards
    Only variables should be passed by reference in 
    the good thing is the variables at $a, and $b successfully displayed the output, but i get the error from the above.
    Last edited by ballball; 04-27-2012 at 09:52 AM.

  5. #5
    Join Date
    Aug 2004
    Location
    Ankh-Morpork
    Posts
    19,637
    I see no reason to pass anything by reference at this point.
    "Please give us a simple answer, so that we don't have to think, because if we think, we might find answers that don't fit the way we want the world to be."
    ~ Terry Pratchett in Nation

    eBookworm.us

  6. #6
    Join Date
    Apr 2011
    Posts
    68
    okay i got it.. thank you very much!

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles