新手问个函数的有关问题
程序员文章站
2022-04-30 16:28:22
...
新手问个函数的问题
function del_news($nid)
{
$selnews_str = "select n_class,n_image,n_pname,n_path from news where n_id=".$nid;
$selnews_result = mysql_query($selnews_str,$con);
$selnews_row = mysql_fetch_array($selnews_result);
$class = $selnews_row["n_class"];
if($selnews_row)
{
echo("有内容");
}
else
{
echo("无内容");
}
echo($nid);
}
if($_GET["nid"] != null || $_GET["nid"] != "")
{
del_news($_GET["nid"]);
}
以上是代码,如果把del_news里的代码放在外面的话就显示有内容,放在函数里调用的话就无内容,参数是正确的。这是什么原因呢?
------解决方案--------------------
function del_news($nid)
{
$selnews_str = "select n_class,n_image,n_pname,n_path from news where n_id=".$nid;
$selnews_result = mysql_query($selnews_str,$con);
$selnews_row = mysql_fetch_array($selnews_result);
$class = $selnews_row["n_class"];
if($selnews_row)
{
echo("有内容");
}
else
{
echo("无内容");
}
echo($nid);
}
if($_GET["nid"] != null || $_GET["nid"] != "")
{
del_news($_GET["nid"]);
}
以上是代码,如果把del_news里的代码放在外面的话就显示有内容,放在函数里调用的话就无内容,参数是正确的。这是什么原因呢?
------解决方案--------------------
- PHP code
function del_news($nid) { } $selnews_str = "select n_class,n_image,n_pname,n_path from news where n_id=".$nid; $selnews_result = mysql_query($selnews_str,$con); $selnews_row = mysql_fetch_array($selnews_result); $class = $selnews_row["n_class"]; if($selnews_row) { echo("有内容"); } else { echo("无内容"); } echo($nid); if($_GET["nid"] != null || $_GET["nid"] != "") { del_news($_GET["nid"]); }
------解决方案--------------------
错误信息是什么?
猜测:
可能是函数作用域的问题。 你的数据库连接句柄是全局的。在函数里面操作数据被认为是没有连接数据库的。
------解决方案--------------------
$selnews_result = mysql_query($selnews_str,$con);
这里的$conn是局部变量
没有声明Global。
可能是这个原因造成的。
把数据库连接句柄加入函数内部试下。
------解决方案--------------------
$selnews_result = mysql_query($selnews_str);
------解决方案--------------------
执行顺序! 你放在函数里边 怎么调用啊!
------解决方案--------------------
你那种可以解决。 还有版主那样也行。相关文章
相关视频
上一篇: PHP array_diff_key()函数的定义与用法
下一篇: 日志功能?该如何解决