欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

学习PHP遇到一个语法问题,折腾一天了,。

程序员文章站 2023-12-31 23:41:58
...
PHP代码部份,问题就出在这里,不能正常的做判断。

            开启中';              echo '';				}else{			  echo '';			  echo '';			   }			?>


函数部份:
//网站基本信息,根据字段获取内容function sysname($field){ $sql="select * from system"; $query=mysql_query($sql); $rs=mysql_fetch_array($query); echo $rs["$field"];}


数据库里webstate字段用的是char类型 字段用函数都可以正常输出,就是不能做判断。


求助。


回复讨论(解决方案)

function sysname($field){   $sql="select * from system";   $query=mysql_query($sql);   $rs=mysql_fetch_array($query);   retrun $rs[$field]; //这里是返回}

function sysname($field){   $sql="select * from system";   $query=mysql_query($sql);   $rs=mysql_fetch_array($query);   retrun $rs[$field]; //这里是返回}


请问如果我要直接调用就显示的话,该怎么写呢?

function sysname($field){   $sql="select * from system";   $query=mysql_query($sql);   $rs=mysql_fetch_array($query);   retrun $rs[$field]; //这里是返回}


这样写,会直接报法错误
Parse error: syntax error, unexpected T_VARIABLE in 指向最后一行,即retrun $rs[$field];

不好意思,手误!
retrun
应为
return

不好意思,手误!
retrun
应为
return



如果我想在函数里直接可以显示,在调用时不用再echo,该怎么做呢?

我之前写的,就可以做到调用时不用echo ,但是用于判断就不行。不明白呀。麻烦提点一二,感谢。

1.函数里面return $rs[$field];
2.判断的时候 var_dump(sysname("webstate"))输出即可。

在函数里面echo 只是输出或者打印,return是函数的返回值,才能判断。

return

1、你首先的学会调试,通过断点调试便可找到问题出在那里,只有知道问题再那,才可以修改。
2、注意:你看有时候是看不出来问题的。
3.解决方案:
function sysname($field){
$sql="select * from system";
$query=mysql_query($sql);
$rs=mysql_fetch_array($query);
return $rs[$field];//不用加引号
}
在php页面:$aa = sysname("webstate");var_dump($aa);看$aa 能输出y不,如果可以,在判断语句中if($aa == "Y"){echo "aa";}else{echo "bb";}看输出什么,一步一步调试你就能解决了。

1.函数里面return $rs[$field];
2.判断的时候 var_dump(sysname("webstate"))输出即可。



您好,首先感谢您的帮助,不过不行。打印出来是 YNULL

你现在的返回值是什么?

数据库的system表里的记录可能不止一条,你所查询的那个字段不在第一条记录里面
你去看看这个system表吧

上一篇:

下一篇: