I'm trying to select a value from a database and display it to the user using SELECT. However I keep getting this error:
Notice: Array to string conversion in (pathname) on line 36.
I thought that the @mysql_fetch_assoc();
would fix this but I still get the notice. This is the part of the code where I'm getting the error:
{
$loggedin = 1;
$get = @mysql_query("SELECT money FROM players WHERE username =
'$_SESSION[username]'");
$money = @mysql_fetch_assoc($get);
echo '<p id= "status">'.$_SESSION['username'].'<br>
Money: '.$money.'.
</p>';
}
What am I doing wrong? I'm pretty new to PHP.
The problem is that $money is an array and you are treating it like a string or a variable which can be easily converted to string. You should say something like:
You cannot echo an array. Must use print_r instead.
Even simpler:
note the quotes around username in the $_SESSION reference.
Store the Value of $_SESSION['username'] into a variable such as $username
it should work!
One of reasons why you will get this Notice: Array to string conversion in… is that you are combining group of arrays. Example, sorting out several first and last names.
To echo elements of array properly, you can use the function,
implode(separator, array)
Example:result:
More examples from W3C.
mysql_fetch_assoc returns an array so you can not echo an array, need to print_r() otherwise particular string $money['money'].