Php 通过变量传递参数

Php 通过变量传递参数,php,mysqli,Php,Mysqli,这是我的密码。。。 docrow('&ddname')未通过。如果我使用docrow('Jhon'),则我的代码没有问题。它在返回中给出了3行。但是docrow('&ddname')有什么问题?它返回0行。虽然有3行 <?php $ddname="Jhon"; include 'config.php'; //my database connection function docrow($name){ global $conn; $sqlquery=mysqli_quer

这是我的密码。。。 docrow('&ddname')未通过。如果我使用docrow('Jhon'),则我的代码没有问题。它在返回中给出了3行。但是docrow('&ddname')有什么问题?它返回0行。虽然有3行

<?php 
$ddname="Jhon"; 
include 'config.php';
//my database connection
function docrow($name){
    global $conn;
    $sqlquery=mysqli_query($conn,"SELECT id,name,docname,discount,docget from income where docname='$name'");
    $countrow=mysqli_num_rows($sqlquery);
    return $countrow;
}
echo docrow('$ddname');
?>

试试看:

<?php
$ddname="Jhon"; 
include 'config.php';
//my database connection
function docrow($name){
    global $conn;
    $sqlquery=mysqli_query($conn,"SELECT id,name,docname,discount,docget from income where docname='$name'");
    $countrow=mysqli_num_rows($sqlquery);
    return $countrow;
}
echo docrow($ddname);
?>

将连接作为参数传递给函数,并且在将参数传递给函数时不要在参数周围使用引号

<?php
$ddname = "Jhon";
include 'config.php';
//my database connection
function docrow($name, $conn)
{
    $sqlquery = mysqli_query($conn, "SELECT id,name,docname,discount,docget from income where docname='$name'");
    return mysqli_num_rows($sqlquery);
}

echo docrow($ddname, $conn);
?>

在单引号中,所有的东西都被认为是字符串,所以不需要单引号回应DOCROW($DDNITY);ddname是一个变量,不包括引号
echo docrow($ddname)我检查了你的代码我工作正常。不要在变量上包含单引号,您可以直接放置变量。此
echo docrow(“$ddname”)的示例执行此操作
echo docrow($ddname)。你会成功的谢谢你!!现在没事了@MustaqueAhmed请想想他被gloabl访问时,您是否注意到global$conn;是的,我认为最好远离全局变量。使用全局变量有什么问题吗?我认为函数不应该依赖于全局范围代码