Can't use function return value

authentication, function, mysql, php, runtime-error

Solution

The error the script returns explains it:

Fatal error: Can't use function return value in write context in C:\xampp\htdocs\forsiteSystem\login.php on line 3

If you don’t understand the meaning of the error—and believe me, most error messages are bizarre even to experienced programmers—look at the line number referenced. And looking at line 3 in `login.php` shows me the error; `$_POST("Submit_button")` is invalid:

if(isset($_POST("Submit_button"))==true)  
    print("Submit button pressed");
else
    print("submit button sorry");

It should be `$_POST["Submit_button"]`:

if(isset($_POST["Submit_button"])==true)  
    print("Submit button pressed");
else
    print("submit button sorry");

But looking at it further, why is there an `==true`? It can simply be like this:

if(isset($_POST["Submit_button"]))  
    print("Submit button pressed");
else
    print("submit button sorry");

But I would recommend doing a better check on that value like this:

if(array_key_exists("Submit_button", $_POST) && !empty(trim($_POST["Submit_button"])))  
    print("Submit button pressed");
else
    print("submit button sorry");

I find that using `array_key_exists` and a combination of `!empty` with `trim` works better for basic user submitted data verification.

Problem

I'm new to PHP and developing a login form. Please find below the code I used. When I tried it gave me the following error: Fatal error: Can't use function return value in write context in C:\xampp\htdocs\forsiteSystem\login.php on line 3 Please help me to fix the issue. Source code for `thems/login.html`: ``` <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <form action=".\login.php" method="get"> Name: <input type="text" name="name"><br> E-mail: <input type="text" name="email"><br> <input type="submit" id="Submit_button"> </form> </body> </html> ``` Source code for `index.php`: ``` <?php // venushka thisara dharmasiri require 'config.php'; require 'thems\login.html'; ?> ``` Source code for `login.php`: ``` <?php if(isset($_POST("Submit_button"))==true) print("Submit button pressed"); else print("submit button sorry"); ?> ``` Source code for `config.php`: ``` <?php $dbUser="root"; $dbPassword=""; $dbName="forsitelogin"; $dbHost="localHost"; $dbConnection= mysql_connect($dbHost, $dbUser, $dbPassword); if($dbConnection) { mysql_select_db($dbName); //print("Sucessfully connected to database"); } else die("<strong>Cound not connect to database </strong> "); ?> ```

Original source