这个页面是一个可以正常显示列表的页面,单击“下一页”时,页数会发生变化,但是页面内容还是显示的第一页。系统提示第72和79行未定义变量Undefined variable: php_self 我应该怎样修改下?
<?php/*error_reporting(E_ALL ^ E_NOTICE);*///######################课题列表########################## include "config.php"; include "header.php";?> <meta http-equiv="Content-Type" content="text/html; charset=GB2312"><link href="style.css" rel="stylesheet" type="text/css"><title>课题列表</title><style type="text/css"><!--.STYLE1 {font-size: 14px}--></style><table width="740" border="0" cellspacing="1" cellpadding="0" bgcolor="#333333" align="center"> <tr> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="text"> <p class="STYLE1">课题编号</p></div> </td> <td width="300" height="30" bgcolor="#FFFFFF"> <div align="center" class="title STYLE1">课题名称</div> </td> <td width="85" height="30" bgcolor="#FFFFFF"> <div align="center" class="STYLE1">指导教师</div></td> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="STYLE1">职称</div> </td> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="title STYLE1">可选人数</div> </td> <td width="80" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">选题情况</div> </td> <td width="60" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">状态</div> </td> <td width="60" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">详细资料</div> </td> </tr><?php $n=0; $query=mysql_query("select count(*) as sm from jiaoshi"); mysql_query("set names 'GB2312'"); $row=mysql_fetch_array($query); $count=$row['sm']; if(empty($offset)) {$offset=0;} echo $offset; $query=mysql_query("select * from jiaoshi order by id asc limit $offset,$list_num") or die ("fail"); mysql_query("set names 'GB2312'"); while($row=mysql_fetch_array($query)){ if(($n%2)!='0'){ echo "<tr bgcolor=#ffffff>";} else{ echo "<tr bgcolor=#E4E4E4>"; } if($row['surplus']==0) $ss="不可选"; else $ss="可选"; echo" <td height='22' class='STYLE1'> <div align='center'>".$row['id']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['subject']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['teacher']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['zhicheng']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['number']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['xuehao']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$ss."</div></td> <td height='22' class='STYLE1'> <div align='center'> <a href=xiangxiziliao.php?id=".$row['id'].">查看</a></div></td> </tr> "; $n++; } ?></table> <?php extract($_REQUEST); $pages=ceil($count/$list_num);echo "<table width=760 border=0 cellspacing=0 cellpadding=0 align=center class='text'> <tbody> <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td> <td width='205'>".$pages."页</td>"; if($offset){ $preoffset=$offset-$list_num; print "<td width='132'><a href=\"$php_self?offset=$preoffset\">上一页</a></td>";} else { echo "<td width='132'>上一页</td>"; } $newoffset=$offset+$list_num; if(($pages!=0)&&(($newoffset/$list_num)!=$pages)) { print("<td width='158'><a href=\"$php_self?offset=$newoffset\">下一页</a></td>"); } else{ echo "<td width='158'>下一页</td>";} $pageno=($offset/$list_num)+1; echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly> 页</td> <td width='4'> </td></tr></table>"; ?> <p> </p><?php include "foot.php";?>
回复讨论(解决方案)
$_SERVER[PHP_SELF]
不写也可以
$_SERVER[PHP_SELF]
不写也可以 是不是把那两行里面的$php_self?删除吗?我删除以后点下一页后直接就“无法找到该网页”了……
昨天等完今天继续等。
您至少应该贴出修改后的代码!
您至少应该贴出修改后的代码! 主要的问题是我不会修改呀~~
既然你不会改,哪有何来的“无法找到该网页”
既然你不会改,哪有何来的“无法找到该网页”
好吧,我输给你了。我就是把71、79行的$php_self?删除了再运行的。
<?php/*error_reporting(E_ALL ^ E_NOTICE);*///######################课题列表########################## include "config.php"; include "header.php";?> <meta http-equiv="Content-Type" content="text/html; charset=GB2312"> <link href="style.css" rel="stylesheet" type="text/css"><title>课题列表</title><style type="text/css"><!--.STYLE1 {font-size: 14px}--></style><table width="740" border="0" cellspacing="1" cellpadding="0" bgcolor="#333333" align="center"> <tr> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="text"> <p class="STYLE1">课题编号</p></div> </td> <td width="300" height="30" bgcolor="#FFFFFF"> <div align="center" class="title STYLE1">课题名称</div> </td> <td width="85" height="30" bgcolor="#FFFFFF"> <div align="center" class="STYLE1">指导教师</div></td> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="STYLE1">职称</div> </td> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="title STYLE1">可选人数</div> </td> <td width="80" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">选题情况</div> </td> <td width="60" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">状态</div> </td> <td width="60" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">详细资料</div> </td> </tr><?php $n=0; $query=mysql_query("select count(*) as sm from jiaoshi"); mysql_query("set names 'GB2312'"); $row=mysql_fetch_array($query); $count=$row['sm']; if(empty($offset)) {$offset=0;} echo $offset; $query=mysql_query("select * from jiaoshi order by id asc limit $offset,$list_num") or die ("fail"); mysql_query("set names 'GB2312'"); while($row=mysql_fetch_array($query)){ if(($n%2)!='0'){ echo "<tr bgcolor=#ffffff>";} else{ echo "<tr bgcolor=#E4E4E4>"; } if($row['surplus']==0) $ss="不可选"; else $ss="可选"; echo" <td height='22' class='STYLE1'> <div align='center'>".$row['id']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['subject']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['teacher']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['zhicheng']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['number']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['xuehao']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$ss."</div></td> <td height='22' class='STYLE1'> <div align='center'> <a href=xiangxiziliao.php?id=".$row['id'].">查看</a></div></td> </tr> "; $n++; } ?></table> <?php extract($_REQUEST); $pages=ceil($count/$list_num);echo "<table width=760 border=0 cellspacing=0 cellpadding=0 align=center class='text'> <tbody> <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td> <td width='205'>".$pages."页</td>"; if($offset){ $preoffset=$offset-$list_num; print "<td width='132'><a href=\"offset=$preoffset\">上一页</a></td>";} else { echo "<td width='132'>上一页</td>"; } $newoffset=$offset+$list_num; if(($pages!=0)&&(($newoffset/$list_num)!=$pages)) { print("<td width='158'><a href=\"offset=$newoffset\">下一页</a></td>"); } else{ echo "<td width='158'>下一页</td>";} $pageno=($offset/$list_num)+1; echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly> 页</td> <td width='4'> </td></tr></table>"; ?> <p> </p><?php include "foot.php";?>
既然你不会改,哪有何来的“无法找到该网页” 怎么会变成一行的?我重新粘
<?phperror_reporting(E_ALL ^ E_NOTICE);//######################课题列表########################## include "conn.php"; include "header.php";?> <meta http-equiv="Content-Type" content="text/html; charset=GB2312"><link href="style.css" rel="stylesheet" type="text/css"><title>课题列表</title><style type="text/css"><!--.STYLE1 {font-size: 14px}--></style><table width="740" border="0" cellspacing="1" cellpadding="0" bgcolor="#333333" align="center"> <tr> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="text"> <p class="STYLE1">课题编号</p></div> </td> <td width="300" height="30" bgcolor="#FFFFFF"> <div align="center" class="title STYLE1">课题名称</div> </td> <td width="85" height="30" bgcolor="#FFFFFF"> <div align="center" class="STYLE1">指导教师</div></td> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="STYLE1">职称</div> </td> <td width="60" height="30" bgcolor="#FFFFFF"> <div align="center" class="title STYLE1">可选人数</div> </td> <td width="80" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">选题情况</div> </td> <td width="60" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">状态</div> </td> <td width="60" height="30" bgcolor="#FFFFFF" class="title"><div align="center" class="STYLE1">详细资料</div> </td> </tr><?php $n=0; $query=mysql_query("select count(*) as sm from jiaoshi"); mysql_query("set names 'GB2312'"); $row=mysql_fetch_array($query); $count=$row['sm']; if(empty($offset)) {$offset=0;} echo $offset; $query=mysql_query("select * from jiaoshi order by id asc limit $offset,$list_num") or die ("fail"); mysql_query("set names 'GB2312'"); while($row=mysql_fetch_array($query)){ if(($n%2)!='0'){ echo "<tr bgcolor=#ffffff>";} else{ echo "<tr bgcolor=#E4E4E4>"; } if($row['surplus']==0) $ss="不可选"; else $ss="可选"; echo" <td height='22' class='STYLE1'> <div align='center'>".$row['id']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['subject']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['teacher']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['zhicheng']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['number']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$row['xuehao']."</div></td> <td height='22' class='STYLE1'> <div align='center'>".$ss."</div></td> <td height='22' class='STYLE1'> <div align='center'> <a href=xiangxiziliao.php?id=".$row['id'].">查看</a></div></td> </tr> "; $n++; } ?></table> <?php extract($_REQUEST); $pages=ceil($count/$list_num); echo "<table width=760 border=0 cellspacing=0 cellpadding=0 align=center class='text'> <tbody> <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td> <td width='205'>共".$pages."页</td>"; if($offset){ $preoffset=$offset-$list_num; print "<td width='132'><a href=\"offset=$preoffset\">上一页</a></td>";} else { echo "<td width='132'>上一页</td>"; } $newoffset=$offset+$list_num; if(($pages!=0)&&(($newoffset/$list_num)!=$pages)) { print("<td width='158'><a href=\"offset=$newoffset\">下一页</a></td>"); } else{ echo "<td width='158'>下一页</td>";} $pageno=($offset/$list_num)+1; echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly> 页</td> <td width='4'> </td></tr></table>"; ?> <p> </p><?php include "foot.php";?>
您至少应该贴出修改后的代码! 对了,需要说明一下,我那个$list_num已经提前定义了。
你真够可以的
print("
说是 $php_self 可以不要
你却
print "
连 ? 也不要了
那我现在修改成print "
加了?后,到是不报错了,但是下一页还是第一页的内容啊~~~~
不知是谁教你用 error_reporting(E_ALL ^ E_NOTICE); 回避矛盾的
这枚不负责任!
你的 $offset 在哪里赋值的?
既然你没有 $offset = $_GET['offset'];
那么目标偏移如何能传入?
既然不能传入,那翻页如何实现?
不知是谁教你用 error_reporting(E_ALL ^ E_NOTICE); 回避矛盾的
这枚不负责任!
你的 $offset 在哪里赋值的?
既然你没有 $offset = $_GET['offset'];
那么目标偏移如何能传入?
既然不能传入,那翻页如何实现? 版主息怒,版主明察秋毫。确实我没有赋值,我应该字哪里赋值?我把那句话加进来了,系统又提示第63行有 Undefined index: offset
<?php extract($_REQUEST); $offset = $_GET['offset']; $pages=ceil($count/$list_num); echo "<table width=760 border=0 cellspacing=0 cellpadding=0 align=center class='text'> <tbody> <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td> <td width='205'>共".$pages."页</td>"; if($offset){ $preoffset=$offset-$list_num; print "<td width='132'><a href=\"?offset=$preoffset\">上一页</a></td>";} else { echo "<td width='132'>上一页</td>"; } $newoffset=$offset+$list_num; if(($pages!=0)&&(($newoffset/$list_num)!=$pages)) { print("<td width='158'><a href=\"?offset=$newoffset\">下一页</a></td>"); } else{ echo "<td width='158'>下一页</td>";} $pageno=($offset/$list_num)+1; echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly> 页</td> <td width='4'> </td></tr></table>"; ?>
不知是谁教你用 error_reporting(E_ALL ^ E_NOTICE); 回避矛盾的
这枚不负责任!
你的 $offset 在哪里赋值的?
既然你没有 $offset = $_GET['offset'];
那么目标偏移如何能传入?
既然不能传入,那翻页如何实现? 第63行也就是第3行
既然你已经有了 extract($_REQUEST);
那么 $offset = $_GET['offset']; 就不需要了,何况如果是 post 表单提交,就没有 $_GET['offset']
你是在 php5 下调试一个按 php4 一般工作环境书写的项目,那么肯定会出现一些问题。
但你实际上没有修改代码的能力,这一点从无法解决未定义变量的问题就可看出
在你的前几个帖子中,我都明确的告诉你了:在程序的开始处加上 extract($_REQUEST); 就可以了
这样做的目的就在于:在没有了魔术变量的情况下,使用 php4 的项目
至于本轮的 $php_self 问题,显然是你自己制造的!
如果是原来就有的,那么就是 $PHP_SELF 而不是 $php_self(注意:php的变量名是区分大小写的)
既然你已经有了 extract($_REQUEST);
那么 $offset = $_GET['offset']; 就不需要了,何况如果是 post 表单提交,就没有 $_GET['offset']
你是在 php5 下调试一个按 php4 一般工作环境书写的项目,那么肯定会出现一些问题。
但你实际上没有修改代码的能力,这一点从无法解决未定义变量的问题就可看出
在你的前几个帖子中,我都明确的告诉你了:在程序的开始处加上 extract($_REQUEST); 就可以了
这样做的目的就在于:在没有了魔术变量的情况下,使用 php4 的项目
至于本轮的 $php_self 问题,显然是你自己制造的!
如果是原来就有的,那么就是 $PHP_SELF 而不是 $php_self(注意:php的变量名是区分大小写的) 版主,我对你简直佩服得五体投地啊!你不仅会看代码,还会看人,还劳您费心写了这么一大段来教导我。我,我,我真的是太感动了!!!
既然你已经有了 extract($_REQUEST);
那么 $offset = $_GET['offset']; 就不需要了,何况如果是 post 表单提交,就没有 $_GET['offset']
你是在 php5 下调试一个按 php4 一般工作环境书写的项目,那么肯定会出现一些问题。
但你实际上没有修改代码的能力,这一点从无法解决未定义变量的问题就可看出
在你的前几个帖子中,我都明确的告诉你了:在程序的开始处加上 extract($_REQUEST); 就可以了
这样做的目的就在于:在没有了魔术变量的情况下,使用 php4 的项目
至于本轮的 $php_self 问题,显然是你自己制造的!
如果是原来就有的,那么就是 $PHP_SELF 而不是 $php_self(注意:php的变量名是区分大小写的) 版主,由于我的水平以及档次问题,一次次地很烦地每天在论坛里问一些弱智的问题,这个是我在做的毕业设计,被逼得没办法了,周围同学也没有会PHP的,在6月2好答辩前,小女子可能还会多次烦您,望您见谅了!
既然你已经有了 extract($_REQUEST);
那么 $offset = $_GET['offset']; 就不需要了,何况如果是 post 表单提交,就没有 $_GET['offset']
你是在 php5 下调试一个按 php4 一般工作环境书写的项目,那么肯定会出现一些问题。
但你实际上没有修改代码的能力,这一点从无法解决未定义变量的问题就可看出
在你的前几个帖子中,我都明确的告诉你了:在程序的开始处加上 extract($_REQUEST); 就可以了
这样做的目的就在于:在没有了魔术变量的情况下,使用 php4 的项目
至于本轮的 $php_self 问题,显然是你自己制造的!
如果是原来就有的,那么就是 $PHP_SELF 而不是 $php_self(注意:php的变量名是区分大小写的) 大哥我对不住你,确实是我把大写改成小写了,我现在改回来了。但是系统还是提示未定义的变量,连我自己都觉得羞愧

使用數據庫存儲會話的主要優勢包括持久性、可擴展性和安全性。 1.持久性:即使服務器重啟,會話數據也能保持不變。 2.可擴展性:適用於分佈式系統,確保會話數據在多服務器間同步。 3.安全性:數據庫提供加密存儲,保護敏感信息。

在PHP中實現自定義會話處理可以通過實現SessionHandlerInterface接口來完成。具體步驟包括:1)創建實現SessionHandlerInterface的類,如CustomSessionHandler;2)重寫接口中的方法(如open,close,read,write,destroy,gc)來定義會話數據的生命週期和存儲方式;3)在PHP腳本中註冊自定義會話處理器並啟動會話。這樣可以將數據存儲在MySQL、Redis等介質中,提升性能、安全性和可擴展性。

SessionID是網絡應用程序中用來跟踪用戶會話狀態的機制。 1.它是一個隨機生成的字符串,用於在用戶與服務器之間的多次交互中保持用戶的身份信息。 2.服務器生成並通過cookie或URL參數發送給客戶端,幫助在用戶的多次請求中識別和關聯這些請求。 3.生成通常使用隨機算法保證唯一性和不可預測性。 4.在實際開發中,可以使用內存數據庫如Redis來存儲session數據,提升性能和安全性。

在無狀態環境如API中管理會話可以通過使用JWT或cookies來實現。 1.JWT適合無狀態和可擴展性,但大數據時體積大。 2.Cookies更傳統且易實現,但需謹慎配置以確保安全性。

要保護應用免受與會話相關的XSS攻擊,需採取以下措施:1.設置HttpOnly和Secure標誌保護會話cookie。 2.對所有用戶輸入進行輸出編碼。 3.實施內容安全策略(CSP)限制腳本來源。通過這些策略,可以有效防護會話相關的XSS攻擊,確保用戶數據安全。

优化PHP会话性能的方法包括:1.延迟会话启动,2.使用数据库存储会话,3.压缩会话数据,4.管理会话生命周期,5.实现会话共享。这些策略能显著提升应用在高并发环境下的效率。

theSession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata,setInSeconds.1)它'sconfiguredinphp.iniorviaini_set().2)abalanceisesneededeededeedeedeededto toavoidperformance andunununununexpectedLogOgouts.3)

在PHP中,可以使用session_name()函數配置會話名稱。具體步驟如下:1.使用session_name()函數設置會話名稱,例如session_name("my_session")。 2.在設置會話名稱後,調用session_start()啟動會話。配置會話名稱可以避免多應用間的會話數據衝突,並增強安全性,但需注意會話名稱的唯一性、安全性、長度和設置時機。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

Atom編輯器mac版下載
最受歡迎的的開源編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

禪工作室 13.0.1
強大的PHP整合開發環境

WebStorm Mac版
好用的JavaScript開發工具