如何重写URL此code?重写、URL、code

2023-09-02 01:01:42 作者:陪你

目前我的网址是这样的

 的http://localhost/mgosoft/admin/index.php P =新用户注册
 

我想用htaccess的重写网址:

 的http://本地主机/ mgosoft /管理/用户注册/
 
Java重写equals和hashCode方法

和环节也将是这样的:

 的http://localhost/mgosoft/admin/index.php P =新用户注册和放大器; A =编辑
 

我想改变这样的:

 的http://本地主机/ mgosoft /管理/用户注册/ A =编辑
 

的index.php

 < PHP
 使用error_reporting(E_ALL ^​​ E_NOTICE);
定义(INCLUDE_CHECK,真正的);
包括(mysql.php);
包括(logincheck.php);
包括(function.php);
如果($ _ REQUEST ['P'] ==过程){
    如果($ _ REQUEST ['F']){
    $ FN = $ _ REQUEST ['F'];
    PHP$前=;
    。$文件= $ FN $前;
    回声$文件;
    }
    其他
标题(位置:404.php);
}
其他{
如果($ _ REQUEST ['P'] ==注销){

    在session_start();
$用户id = $ _ SESSION ['loginuser'];
如果(session_destroy()){
$更新=请求mysql_query(更新用户设置状态= 0其中userid ='$用户ID');
标题(位置:login.php中);
出口();
}
}
//标题开始
如果(!$ _ REQUEST ['P'])
$标题=MyGoaOnline |果阿的最好的搜索引擎|任何服务提供商;
ELSEIF($ _ REQUEST ['P'] ==家)//改变标题
$标题=主页:MyGoaOnline |果阿的最好的搜索引擎|任何服务提供商;
其他
$标题= ucwords($ _ REQUEST ['P']);

//身体的一部分
如果(!$ _ REQUEST ['P'])
标题(位置:login.php中);
其他{
    $ SQL =请求mysql_query(从菜单中选择ID,名称,文件,其中NAME ='$ _ REQUEST [P]');
$行= mysql_fetch_array($ SQL);
$计数= mysql_num_rows($ SQL);
如果($计数== 1){
$文件= $行['文件'];
}
    其他{
        $ SQL =请求mysql_query(选择名称,文件,从子菜单MENUID其中name ='$ _ REQUEST [P]');
$行= mysql_fetch_array($ SQL);
$计数= mysql_num_rows($ SQL);
如果($计数== 1){
    $ activeid = $行['MENUID'];
$文件= $行['文件'];
}
其他
标题(位置:404.php);
}
}
}
如果($ _ REQUEST ['P']!==进程){
包括:(header.php文件);
}
如果($文件)
包括:($文件);
//页脚
如果($ _ REQUEST ['P']!==进程){
包括(footer.php);
}

?>
 

解决方案

尝试添加这些规则的htaccess文件的的 / mgosoft /管理/ 文件夹

  RewriteEngine叙述上
的RewriteBase / mgosoft /管理/

的RewriteCond%{THE_REQUEST}  /+mgosoft/admin/index.php?p =([^ &安培;] +)安培;([^ ] *)
重写规则^ / mgosoft /管理/%1 /%2 [L,R]

的RewriteCond%{} REQUEST_FILENAME!-f
的RewriteCond%{} REQUEST_FILENAME!-d
重写规则^(。*)/ $的index.php?P = $ 1 [L,QSA]
 

Currently my URL is like this

http://localhost/mgosoft/admin/index.php?p=userreg

I want to rewrite url using htaccess:

http://localhost/mgosoft/admin/userreg/

and link will also look like this:

http://localhost/mgosoft/admin/index.php?p=userreg&a=edit

I want to change it like this:

http://localhost/mgosoft/admin/userreg/?a=edit

index.php

<?php
 error_reporting(E_ALL ^ E_NOTICE);
define('INCLUDE_CHECK',true);
include("mysql.php");
include("logincheck.php");
include("function.php");
if($_REQUEST['p'] == process){
    if($_REQUEST['f']){
    $fn=$_REQUEST['f'];
    $ex=".php";
    $file=$fn.$ex;
    echo $file;
    }
    else
header("Location: 404.php");
}
else{
if($_REQUEST['p'] == logout){

    session_start();
$userid=$_SESSION['loginuser'];
if(session_destroy()){
$update=mysql_query("UPDATE user SET status=0 WHERE userid='$userid'");
header("Location: login.php");
exit();
}
}
//title start
if(!$_REQUEST['p'])
$title="MyGoaOnline | Goa's Best Search engine | Any Service Provider";
elseif($_REQUEST['p']==home)//change title
$title="Home: MyGoaOnline | Goa's Best Search engine | Any Service Provider";
else
$title=ucwords($_REQUEST['p']);

//body part
if(!$_REQUEST['p'])
header("Location: login.php");
else{
    $sql=mysql_query("select id,name,file from menu where name='$_REQUEST[p]'");
$row=mysql_fetch_array($sql);
$count=mysql_num_rows($sql);
if($count==1){
$file=$row['file'];
}
    else{
        $sql=mysql_query("select name,file,menuid from submenu where name='$_REQUEST[p]'");
$row=mysql_fetch_array($sql);
$count=mysql_num_rows($sql);
if($count==1){
    $activeid=$row['menuid'];
$file=$row['file'];
}
else
header("Location: 404.php");
}
}
}
if($_REQUEST['p'] !==process ){
include("header.php");
}
if($file)
include($file);
//footer
if($_REQUEST['p'] !==process){
include("footer.php");
}

?>

解决方案

Try adding these rules to the htaccess file in the /mgosoft/admin/ folder:

RewriteEngine On
RewriteBase /mgosoft/admin/

RewriteCond %{THE_REQUEST}  /+mgosoft/admin/index.php?p=([^ &]+)&?([^ ]*)
RewriteRule ^ /mgosoft/admin/%1/?%2 [L,R]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ index.php?p=$1 [L,QSA]