PHP,从Array返回值

时间:2013-10-20 16:25:18

标签: php mysql

我正在尝试从MySql表中返回值,并且似乎能够获得除了我需要的所有内容之外的所有内容!

PHP:

<?php
session_start();
include('config.php');
$user_check=$_SESSION['login_user'];

$sql_rec = "select UserID from useradmin where username='$user_check' ";
$rs_rec = mysql_query($sql_rec);
$data_rec = mysql_fetch_object($rs_rec);

$userID = $data_rec->UserID; 

$sql_fn = "select * from Candidates where UserID='$userID' ";
$rs_fn = mysql_query($sql_fn);
$row = mysql_fetch_row($rs_fn);
$data_fn = $row['contactno'];

print $sql_fn;
print $data_fn;
print $row;

?>

$ sql_fn给了我正确的结果

$ row给我'数组'

但$ data_fn什么都没给我。

基本上我正在尝试使用如下结果填充文本字段:

HTML:

<label for="contactno">Contact Number</label> <br> <input type="test" name="contactno" id="contactno" class="input_field" value="<?php echo $row['contactno'];?>"> 

有人可以指出我出错的地方吗?

谢谢。

4 个答案:

答案 0 :(得分:0)

使用print_r($row);打印数组内容,这样可以显示您的内容。 (我认为MahanGM是对的,当你只有一个简单的数字时,你会期待一个关联数组)

有关使用print_r的更多信息:http://php.net/manual/en/function.print-r.php

PS:使用mysqli进行新开发

答案 1 :(得分:0)

我认为你需要这个:

$row = mysql_fetch_array($rs_fn, MYSQL_ASSOC);

使用mysql_num_rows($query) > 0检查您的查询以确保它已返回数据,否则您将从mysql_fetch_*收到错误。

BTW,不推荐使用mysql函数。使用mysqli或PDO或pg。

答案 2 :(得分:0)

_fetch_row返回一个索引数组。如果您按列名访问,则需要_fetch_assoc

另外,要输出数组,请使用var_dump

答案 3 :(得分:0)

$ sql_fn =“select * from Candidates,其中UserID ='$ userID'”; 你好

如何存储UserID字段,如果是一个整数类型或字符串,那么你就不需要单引号了。 你肯定会得到$ sql_fn,因为它只是一个查询字符串。 您需要检查返回数组中的内容。 检查contactno是否是表中正确的列名。只需简单的print_r($ row) 然后你可以看到答案