我是php函数的新手,是否可以在php函数中使用mysqli_fetch_assoc?
这就是我要做的。
函数.php
<?php
function getinfoid($conn,$idapplicant){
$sql = "SELECT * FROM applicants WHERE id_mis = '".$idapplicant."' ";
$result = mysqli_query($conn,$sql);
while ($row = mysqli_fetch_assoc($result)) {
$prefix=$row['prefix'];
$fname1=$row['fname'];
$mname1=$row['mname'];
$lname1=$row['lname'];
$gender=$row['gender'];
$addr=$row['addr'];
}
}
?>
view.php
<?php
require('connection.php');
include ('function.php');
getinfoid($conn,'2');
?>
I'm <?php echo $fname1 ?>
怎么可能回显$fname1?
您的函数不返回任何内容,那些分配的变量留在函数的范围内。如果总是只有一行要提取,你可以这样做:
function getinfoid($conn,$idapplicant){
$sql = "SELECT * FROM applicants WHERE id_mis = '".$idapplicant."' ";
$result = mysqli_query($conn,$sql);
return mysqli_fetch_assoc($result);
}
然后你可以调用这个函数并回显你的变量:
$row = getinfoid($conn,'2');
?>
I'm <?php echo $row['fname'] ?>
假设您只需要打印$fname1
,下面是我提出的解决方案:
您需要从函数中返回$fname1
。
<?php
function getinfoid($conn,$idapplicant){
$sql = "SELECT * FROM applicants WHERE id_mis = '".$idapplicant."' ";
$result = mysqli_query($conn,$sql);
$row = mysqli_fetch_assoc($result);
return $row['fname'];
}
require('connection.php');
include ('function.php');
$fname1 = getinfoid($conn,'2');
?>
I'm <?php echo $fname1 ?>
或者,您可以从函数返回整行,如下所示:
function getinfoid($conn,$idapplicant){
$sql = "SELECT * FROM applicants WHERE id_mis = '".$idapplicant."' ";
$result = mysqli_query($conn,$sql);
return mysqli_fetch_assoc($result);
}
require('connection.php');
include ('function.php');
$useDetails = getinfoid($conn,'2');
?>
I'm <?php echo $useDetails['fname'] ?>
您可以将变量$fname1声明为全局变量并访问该变量。假设只返回一条记录。
函数.php
<?php
$fname1 = "";
function getinfoid($conn,$idapplicant){
global $fname1;
$sql = "SELECT * FROM applicants WHERE id_mis = '".$idapplicant."' ";
$result = mysqli_query($conn,$sql);
while ($row = mysqli_fetch_assoc($result)) {
$prefix=$row['prefix'];
$fname1=$row['fname'];
$mname1=$row['mname'];
$lname1=$row['lname'];
$gender=$row['gender'];
$addr=$row['addr'];
}
}
?>
view.php
<?php
require('connection.php');
include ('function.php');
getinfoid($conn,'2');
?>
I'm <?php echo $fname1 ?>
<?php
function getinfoid($conn,$idapplicant){
$sql = "SELECT * FROM applicants WHERE id_mis = '".$idapplicant."' ";
$result = mysqli_query($conn,$sql);
$row = mysqli_fetch_assoc($result);
return $row
}
?>
<?php
require('connection.php');
include ('function.php');
$data = getinfoid($conn,'2');
?>
I'm <?php echo $data['firstname'] ?>