Home  >  Article  >  Backend Development  >  php带参数如何按照参数来执行具体的代码

php带参数如何按照参数来执行具体的代码

WBOY
WBOYOriginal
2016-06-23 14:02:321006browse

比如,我有网页
test.php
后面带一个参数test.php?1, test.php?2,test.php?3,test.php?4,test.php?5,

我现在通过获取url后面?后面的参数。
来执行具体的代码。求代码。。好像和asp写法不一样。。

获取参数。
然后
如果=1
执行 1相关的代码

如果等于2 执行2的相关代码
………………
如果等于5,执行5的相关代码

如果都不等于12345,那么就提示,参数错误
求代码,本人菜鸟。。


回复讨论(解决方案)

不明白你的意思
你在 asp 中怎么做的?

我估摸着楼主的asp网站是不是做了重写的,“?”后面的值也许应该是category=1、2、3...,所以你通过判断$_GET['category']=?就能运行指定的代码。不知道我的猜想正确否。
希望回答对你有帮助。

我估摸着楼主的asp网站是不是做了重写的,“?”后面的值也许应该是category=1、2、3...,所以你通过判断$_GET['category']=?就能运行指定的代码。不知道我的猜想正确否。
希望回答对你有帮助。

比如:我现在要调用网站各个栏目的数据。
我只想用一个php页面,然后用id参数来识别不同栏目内容,然后用id参数来输出。。?


不明白你的意思
你在 asp 中怎么做的?
比如:我现在要调用网站各个栏目的数据。
我只想用一个php页面,然后用id参数来识别不同栏目内容,然后用id参数来输出。。?

如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $actionswitch($action){ case '1':...;break; case '2':...;break; case '3':...;break; case '4':...;break; case '5':...;break; default:...;break;}

比如:我现在要调用网站各个栏目的数据。
我只想用一个php页面,然后用id参数来识别不同栏目内容,然后用id……
完全可以,你可以通过判断不同的id,参数组合不同的查询条件,所以也就得到不同的数据及栏目啦。当然你用到数据库了吧。

有点明白楼主的意思了
http://localhost/test.php?2
这样的url用
$id = key($_GET);
取得id号

http://localhost/test.php?id=2
这样的url用
$id = $_GET['id'];
取得id号


PHP code?123456789101112如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $actionswitch($action){ case '1':...;break; case '2':...;break; case '3'……

$action= $_SERVER['QUERY_STRING']; 
switch($action)
{
 case '1':...;break;
 case '2':...;break;
 case '3':...;break;
 case '4':...;break;
 case '5':...;break;
 default:...;break;
 }
?>

这样子写怎么就报错了。。
在线求完整的演示代码,以前搞asp的、、、感谢了。。。

引用 5 楼 zhangbin1988 的回复:PHP code?123456789101112如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $actionswitch($action){ case '1':...;break; case……

加入id为1,那么输出echo 这个是栏目1.

加入id为2,那么输出echo 这个是栏目2.

求完整代码。。。以前没有写过php
,格式和语法都还在学习中。。。

跟版主有学习了一个函数 key,学习了

有点明白楼主的意思了
http://localhost/test.php?2
这样的url用
$id = key($_GET);
取得id号

http://localhost/test.php?id=2
这样的url用
$id = $_GET['id'];
取得id号

引用 5 楼 zhangbin1988 的回复:PHP code?123456789101112如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $actionswitch($action){ case '1':...;break; case……

大神 你直接复制肯定报错啦  ...是我乱写的,要用你的逻辑代码替换呀!!!

引用 8 楼 phpcainiao 的回复:引用 5 楼 zhangbin1988 的回复:PHP code?123456789101112如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $actionswitch($action){ ca……

求完整代码格式咯,,感谢。。。

加入id为1,那么输出echo 这个是栏目1.

加入id为2,那么输出echo 这个是栏目2.

求完整代码。。。以前没有写过php
,格式和语法都还在学习中。。。

引用 8 楼 phpcainiao 的回复:引用 5 楼 zhangbin1988 的回复:PHP code?123456789101112如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $actionswitch($action){ ca……

你这样子的逻辑,我asp,也是这样子写的,现在我估计还是一些语法和格式我没有搞对。、。

比如,我有网页
test.php
后面带一个参数test.php?1, test.php?2,test.php?3,test.php?4,test.php?5,

我现在通过获取url后面?后面的参数。
来执行具体的代码。求代码。。好像和asp写法不一样。。

获取参数。
然后
如果=1
执行 1相关的代码

如果等于2 执行2的相关代码
……………


$class= $_SERVER['QUERY_STRING'];
switch ($class)
{
case 1:
  echo "Number 1";
  break;
case 2:
  echo "Number 2";
  break;
case 3:
  echo "Number 3";
  break;
default:
  echo "No number between 1 and 3";
}
有点眉目了。。

引用 11 楼 zhangbin1988 的回复:引用 8 楼 phpcainiao 的回复:引用 5 楼 zhangbin1988 的回复:PHP code?123456789101112如果没有用url重写,则用$_SERVER['QUERY_STRING']获取 1、2、3等参数如果用了url重写,则用$_GET['参数名']获取1、2、3等参数假如获取的参数为 $……

case '1':echo '栏目1';break;也可以把echo '栏目1';替换成相应的逻辑;具体的只能你自己写

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn