我有两个文件:
function get_product_name($pid){
$result = mysql_query("SELECT product_name FROM product_table WHERE product_id='".$pid."'", $link);
$row = mysql_fetch_array($result);
return $row['product_name'];
}
Run Code Online (Sandbox Code Playgroud)
<?php
include('cart_function.php');
$pid = $_GET['product_id'];
$pname = get_product_name($pid);
echo $pname;
?>
Run Code Online (Sandbox Code Playgroud)
执行后cart.php,它显示错误
提供的参数不是有效的MySQL-Link资源'
如果我直接在MySQL数据库中运行查询,它可以完美地工作.如果我get_product_name()直接使用该功能cart.php,它再次无法正常工作.但是,如果我删除该函数并使用下面的代码,它的工作原理如下:
<?php
$pid = $_GET['product_id'];
$result = mysql_query("SELECT product_name FROM product_table WHERE product_id='".$pid."'",$link);
$row = mysql_fetch_array($result);
$pname = $row['product_name'];
echo $pname;
?>
Run Code Online (Sandbox Code Playgroud)
为什么?
问题出在这里:
function get_product_name($pid){
$result = mysql_query("SELECT product_name FROM product_table WHERE product_id='".$pid."'",
$link);
Run Code Online (Sandbox Code Playgroud)
你已经写过了$link,但没有提供它的价值.您必须在传递值时在函数参数中传递此$pid值,如下所示:
function get_product_name($pid,$link){
Run Code Online (Sandbox Code Playgroud)