无法从mysql获取值

时间:2015-02-10 09:59:39

标签: php mysql

我不知道为什么我无法通过HTML在HTML中获取mysql的值,请告诉我下面的编码有什么问题,谢谢!这很奇怪,当我回显$ count2时我可以得到值1但是我无法获得字段值,无论echo $ bu2还是$ dept2,die("123". $bu2 ." ". $count2 ."123");的结果是123 1123

if (isset($_POST['update'])) {
include 'db.php';
mysql_query("SET CHARACTER SET utf8", $conn);
mysql_query("SET NAMES utf8", $conn);
$query2=mysql_query("SELECT bu, SUBSTRING_INDEX(dept, '-',-1) AS Department FROM tb_user WHERE username = '". $sessionusername ."'", $conn);
$count2=mysql_num_rows($query2);
if ($count2 == 1) {
    $bu2=$query2['bu'];
    $dept2=$query2['Department'];
    die("123". $bu2 ." ". $count2 ."123");
}
mysql_close($conn);}

4 个答案:

答案 0 :(得分:2)

使用mysql_fetch_assoc()并将其分配给变量,例如$rec,然后使用$rec['bu'] 完整的代码将是

$rec = mysql_fetch_assoc($query2)
$bu2 = $rec['bu'];
$dept2 = $rec['Department'];

答案 1 :(得分:2)

您可以使用 mysql_fetch_assoc 来获取所有值数组中的值。

$connection = mysql_connect($server, $username, $password);

$query = mysql_db_query($database, $query);

$row = mysql_fetch_assoc($query);

如果检查$ row的值,您可以获得您期望的结果类型的值。

答案 2 :(得分:0)

对于返回结果集的SELECT,SHOW,DESCRIBE,EXPLAIN和其他语句,mysql_query()在成功时返回资源,如果出错则返回FALSE。 http://php.net/manual/en/function.mysql-query.php

当您尝试使用mysql_query的结果时,就好像它是一个关联数组。在我给你的链接中,你可以找到获取mysql_query结果的正确方法。像这样:

$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)) 
{
    echo $row['bu'];
}

或者,您可以使用mysql_fetch_array http://php.net/manual/en/function.mysql-fetch-array.php

$result = mysql_query($query);
$data = mysql_fetch_array($result, MYSQL_ASSOC)
print $data['bu']

请记住,这两个功能都已弃用,您想要查看mySQLi http://php.net/manual/en/book.mysqli.php

答案 3 :(得分:-1)

您需要使用

获取表格行
mysql_fetch_array

类似的东西:

$row = mysql_fetch_array($query2);
$bu2 = $row['bu'];
$dept2=$row['Department'];