在php中打印会话时出现问题

时间:2015-12-03 01:33:37

标签: php mysql

我在php中使用$_SESSION传递信息时遇到问题。每次尝试时,它都会向我发送一条消息,说明"数组到字符串转换"。这是代码:

<?php

session_start(); 
ob_start();
include("conexion3.php");
$con = mysql_connect($host,$user,$pw) or die("Error");
mysql_select_db($db,$con) or die("Error DB");

$sel2 = mysql_query("SELECT usuario_n,correo FROM usuarios WHERE usuario_n='machan'",$con);
$sesion = mysql_fetch_array($sel2);

$_SESSION['resultado'] = $sesion;

echo $_SESSION['resultado'];

?> 

2 个答案:

答案 0 :(得分:2)

您正在尝试回显数组。 $ sesion存储从mysql db获取的数组。尝试以下代替echo语句:

  

的print_r($ _ SESSION [&#39; resultado&#39;]);

http://php.net/manual/en/function.print-r.php

答案 1 :(得分:1)

答案在于你的最后评论。问题是,$_SESSION['resultado']是一个数组,并且echo $_SESSION['resultado'];你试图将数组转换为字符串,因此就是消息。

您可以执行以下操作来获取值:

echo $_SESSION['resultado'][0]; // machan
echo $_SESSION['resultado']['usuario_n']; // machan
echo $_SESSION['resultado'][1]; // elver@gmail.com
echo $_SESSION['resultado']['correo']; // elver@gmail.com

旁注:请不要使用mysql_数据库扩展,它们在PHP 5.5.0中已弃用,并已在PHP 7.0.0中删除。请改用mysqliPDO扩展程序。这是why you shouldn't use mysql_ functions