在php函数中显示mysql数据

时间:2011-03-17 15:18:57

标签: php mysql function

好的我现在遇到问题我想从数据库中显示数据并通过函数显示它现在我该怎么做?

就像我从数据库中获取了一行,它的名字是$ row_field ['data'];现在它是正确的我已经为它分配了一个变量,就像这个$ data = $ row_field ['data'];现在,如果我在一个函数中调用它,它显示未定义的变量,即使我在函数中指定了全局函数,如此

function fun(){
    global $data;
    echo $data;
}

但如果我给它分配一个像1或2的值或任何它显示没有任何错误的原因为什么会这样???

4 个答案:

答案 0 :(得分:0)

全球是邪恶的。我不知道你要做什么,但为什么不在函数本身进行查询呢?

答案 1 :(得分:0)

如果在仍然在全局范围内时为其指定了值1或2,则显示,那么我只能假设您的数据库没有返回您认为的结果。如果在函数外部回显它,是否显示数据库值?

答案 2 :(得分:0)

如果您有一个名为data的列,并且您的php调用类似于

$result = mysql_query("SELECT data FROM mytable");

while ($row_field = mysql_fetch_assoc($result, MYSQL_NUM)) {
    ...  
}

然后,您可以将...替换为print $row_field['data']

否则,请提供代码片段,查询数据库并检索结果。

答案 3 :(得分:0)

学习php时尝试从简单的事情开始。例如,为了从数据库中获取一些数据,请遵循php网站上的examples

<?php

$conn = mysql_connect("localhost", "mysql_user", "mysql_password");

if (!$conn) {
    echo "Unable to connect to DB: " . mysql_error();
    exit;
}

if (!mysql_select_db("mydbname")) {
    echo "Unable to select mydbname: " . mysql_error();
    exit;
}

$sql = "SELECT id as userid, fullname, userstatus 
    FROM   sometable
    WHERE  userstatus = 1";

$result = mysql_query($sql);

if (!$result) {
    echo "Could not successfully run query ($sql) from DB: " . mysql_error();
    exit;
}

if (mysql_num_rows($result) == 0) {
    echo "No rows found, nothing to print so am exiting";
    exit;
}

// While a row of data exists, put that row in $row as an associative array
// Note: If you're expecting just one row, no need to use a loop
// Note: If you put extract($row); inside the following loop, you'll
//       then create $userid, $fullname, and $userstatus
while ($row = mysql_fetch_assoc($result)) {
    echo $row["userid"];
    echo $row["fullname"];
    echo $row["userstatus"];
}

mysql_free_result($result);

如果一切顺利,那么稍微改变一下while循环。

$myArray = array();

while ($row = mysql_fetch_assoc($result)) {
    $myArray[] = $row;
}

mysql_free_result($result);

// now you can start playing with your data
echo $myArray[0];

小步骤......