如何从函数中获取值并以html格式打印它们

时间:2014-11-22 08:19:20

标签: php

我想从我的php函数中检索两个值并将它们打印到我的表单中。 究竟在哪里以及如何调用我的函数:get_prof_set()

php代码:

    if (!isset($_SESSION)) {

    session_start();
}

function get_prof_set() {

    $user_id = $_SESSION['user_id'];
    $query = "SELECT user_name, user_email FROM users WHERE user_id = '{$user_id}' ";

    $result = mysql_query($query);

    while ($row = mysql_fetch_array($result)) {

        $user_name = $row['user_name'];
        $user_email = $row['user_email'];

    }
}

我的表格:

    require ('includes/functions/profile_func.php');

    <form action="./profile.php" method="post" id="form_profile">

                         <div>
                            <label>Name:</label>
                            <div>
                                <input id="user_name" type="text" name="user_name" value="<?php echo $user_name; ?> " />
                                <input id="hidden_user_name" type="hidden" name="hidden_user_name" value="<?php $user_name; ?>" />
                            </div>
                             <div >
                                <button type="submit" name="btnSave" id="btnSave">Save</button>
                            </div>
                            <div id="feedback_profile_name”>  </div>                              
                        </div>

                        <br>

                        <div>
                            <label>Email:</label>
                            <div>
                                <input id="user_email” type="text" name="user_email” value="<?php echo $user_email; ?> " />
                                <input id="hidden_user_email” type="hidden" name="hidden_user_email” value="<?php $user_email; ?>" />
                            </div>
                             <div >
                                <button type="submit" name="btnSave" id="btnSave">Save</button>
                            </div>
                            <div id="feedback_profile_email”>  </div>                              
                        </div>                        
</form>

2 个答案:

答案 0 :(得分:2)

功能(更新返回语句):

function get_prof_set() {

    $user_id = $_SESSION['user_id'];
    $query = "SELECT user_name, user_email FROM users WHERE user_id = '{$user_id}' ";

    $result = mysql_query($query);

    while ($row = mysql_fetch_array($result)) {

        $user_name = $row['user_name'];
        $user_email = $row['user_email'];

    }
    /* UPDATE!!! */
    return array('name' => $user_name, 'email' => $user_email);
}

形式:

<?php
    require ('includes/functions/profile_func.php');
    $user = get_prof_set();
?>

<form action="./profile.php" method="post" id="form_profile">
    <div>
        <label>Name:</label>
        <div>
            <!-- Update!!! --><input id="user_name" type="text" name="user_name" value="<?php echo $user['name']; ?>" />
            <!-- Update!!! --><input id="hidden_user_name" type="hidden" name="hidden_user_name" value="<?php $user['name']; ?>" />
        </div>
        <div >
            <button type="submit" name="btnSave" id="btnSave">Save</button>
        </div>
        <div id="feedback_profile_name”>  </div>                              
    </div>
    <br>
    <div>
        <label>Email:</label>
        <div>
            <!-- Update!!! --><input id="user_email” type="text" name="user_email” value="<?php echo $user['email']; ?>" />
            <!-- Update!!! --><input id="hidden_user_email” type="hidden" name="hidden_user_email” value="<?php $user['email']; ?>" />
        </div>
        <div >
            <button type="submit" name="btnSave" id="btnSave">Save</button>
        </div>
        <div id="feedback_profile_email”>  </div>                              
    </div>                        
</form>

希望你明白,函数返回数组。然后您可以稍后使用此数组:)。

BTW:您应该使用LIMIT 1查询进行声明(我认为只有一个用户具有给定的ID)。为了安全起见。

BTW2:最好使用此功能一次(因为它连接到数据库),记住变量中的用户,然后只回显它。另一个答案也是正确的,但它说你应该使用这个函数几次,这是不正确的。

由于您没有使用类,这是一个基本的例子。请记住以后切换到PDO:http://php.net/manual/en/book.pdo.php

http://php.net/manual/en/function.mysql-query.php - 注意红框;)。

答案 1 :(得分:1)

您可以在require语句之后和使用其变量之前的任何地方调用此函数。