web-dev-qa-db-fra.com

Avis: Conversion de tableau en chaîne dans

J'essaie de sélectionner une valeur dans une base de données et de l'afficher à l'utilisateur à l'aide de SELECT. Cependant, je continue à avoir cette erreur:

Notice: Array to string conversion in (pathname) on line 36.

Je pensais que la @mysql_fetch_assoc(); pourrait résoudre ce problème, mais je reçois toujours l'avis. C'est la partie du code où je reçois l'erreur:

  {
  $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>';
  }

Qu'est-ce que je fais mal? Je suis assez nouveau en PHP.

26
Sunden

Le problème est que $ money est un tableau et que vous le traitez comme une chaîne ou une variable pouvant facilement être convertie en chaîne. Vous devriez dire quelque chose comme:

 '.... Money:'.$money['money']
18
Razvan

Encore plus simple:

$get = @mysql_query("SELECT money FROM players WHERE username = '" . $_SESSION['username'] . "'");

notez les guillemets autour de nom d'utilisateur dans la référence $ _ SESSION.

1
user1046243

Stocker la valeur de $ _SESSION ['nom d'utilisateur'] dans une variable telle que $ nom d'utilisateur

$username=$_SESSION['username'];

$get = @mysql_query("SELECT money FROM players WHERE username = 
 '$username'");

ça devrait marcher!

0
user5336032

mysql_fetch_assoc retourne un tableau afin que vous ne puissiez pas faire écho à un tableau, vous devez utiliser print_r (), sinon la chaîne de caractères particulière $ money ['money'].

0
Learner

Une des raisons pour lesquelles vous obtiendrez cet avis: Conversion de tableau en chaîne dans… est que vous combinez un groupe de tableaux. Exemple, triant plusieurs prénoms et noms.

Pour faire correctement écho aux éléments d'un tableau, vous pouvez utiliser la fonction implode(separator, array) Exemple:

implode(' ', $var)

résultat:

first name[1], last name[1]
first name[2], last name[2]

Plus d'exemples de W3C .

0

Vous ne pouvez pas faire écho à un tableau. Doit utiliser print_r à la place.

<?php
$result = $conn->query("Select * from tbl");
$row = $result->fetch_assoc();
print_r ($row);
?>
0
user9008566