我想从我的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>
答案 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。
答案 1 :(得分:1)
您可以在require语句之后和使用其变量之前的任何地方调用此函数。