新手请教合法用户验证问题
大家好!我最近开始学php 登陆界面是这个意思 如果账号和密码与数据库一样 那么给一个session=用户名
然后在每个界面检测是否合法用户 用include check.php
代码大意就是 如果session为空 那么提示非法 但是发现这样安全性很差 请问还有什么好的思路和代码吗 多谢
新手没多少分 不好意思
回复讨论(解决方案)
session为全局变量,你可以在任意页面检查是否存在session有没有值
session为全局变量,你可以在任意页面检查是否存在session有没有值
我原先的checkA..PHP中是这样写的
session_start();
if($_SESSION[admin_name]==""){
echo "<script>alert('对不起,请通过正确的途径登录博考图书馆管理系统!');window.location.href='login.php';</script>";
}
?>
但是感觉不安全啊 如果外部非法提交一个表单 在用seession==“任意内容” 就能被执行了 请问如何改
$_SESSION[''admin_name]=="" 和session=="" 不一样吧
请告知你的 php 版本
if($_SESSION[admin_name]==""){
应写作
if(! isset($_SESSION['admin_name'])){
5.4.3的版本
打错5.3.4
如果外部非法提交一个表单 在用seession==“任意内容” 就能被执行了
是你想象的还是真实的?
如果外部非法提交一个表单 在用seession==“任意内容” 就能被执行了
是你想象的还是真实的?
我的checkA中代码如下
//权限验证
//2014-3-20
//by liu
session_start();
if ($_SESSION['username']==""){
echo "<script>alert('操作非法!');location='http://127.0.0.1/admin/index.php';</script>";
}
?>
login代码如下
//验证登陆信息
//2014-3-24
//by liu 1s
session_start();
include_once 'connss.php';
//if($_POST['submit']){
$username=$_POST['username'];
$userpasswd=$_POST['userpass'];
$answers=$_POST['answers'];
$userpasswd=md5($userpasswd);
$sql="select * from user where username='$username'";
$query=mysql_query($sql);
$row=mysql_fetch_array($query);
if ($row['answers']==$answers){
if($row['username']==$username){
if($row['userpasswd']==$userpasswd){
$_SESSION['username']=$username;
echo "<script>location='main.php';</script>";
}
else {
echo "<script>alert('用户名,密码,预留问题错误!');location='index.php';</script>";
}}
else {
echo "<script>alert('用户名,密码,预留问题错误!');location='index.php';</script>";
}}
else {
echo "<script>alert('用户名,密码,预留问题错误!');location='index.php';</script>";
}
?>
我在每个页面前include checkA.php
然后我新建一个php 模仿外部提交 内容为一个表单 用于添加新闻 然后开头 用 session_start();
$_SESSION['username']=="123";
发现可以提交成功! 求解
session_start();
$_SESSION['username']="123";
是php程序,不是表单能提交的!
当然,如果有人跑到你的服务器上修改你的程序,那就另当别论了
session_start();
$_SESSION['username']="123";
是php程序,不是表单能提交的!
当然,如果有人跑到你的服务器上修改你的程序,那就另当别论了
就是想请教下 我这样写的checkA.php是不是安全的 如果不是如何修改呢 谢谢
应该是安全的
应该是安全的
哪还有别的思路的吗
学习了!!!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Pelanjutan URL Pelanggan PHP (CURL) adalah alat yang berkuasa untuk pemaju, membolehkan interaksi lancar dengan pelayan jauh dan API rehat. Dengan memanfaatkan libcurl, perpustakaan pemindahan fail multi-protokol yang dihormati, php curl memudahkan execu yang cekap

Alipay Php ...

Adakah anda ingin memberikan penyelesaian segera, segera kepada masalah yang paling mendesak pelanggan anda? Sembang langsung membolehkan anda mempunyai perbualan masa nyata dengan pelanggan dan menyelesaikan masalah mereka dengan serta-merta. Ia membolehkan anda memberikan perkhidmatan yang lebih pantas kepada adat anda

Artikel membincangkan pengikatan statik lewat (LSB) dalam PHP, yang diperkenalkan dalam Php 5.3, yang membolehkan resolusi runtime kaedah statik memerlukan lebih banyak warisan yang fleksibel. Isu: LSB vs polimorfisme tradisional; Aplikasi Praktikal LSB dan Potensi Perfo

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Artikel membincangkan ciri -ciri keselamatan penting dalam rangka kerja untuk melindungi daripada kelemahan, termasuk pengesahan input, pengesahan, dan kemas kini tetap.

Artikel ini membincangkan menambah fungsi khusus kepada kerangka kerja, memberi tumpuan kepada pemahaman seni bina, mengenal pasti titik lanjutan, dan amalan terbaik untuk integrasi dan debugging.

Menghantar data JSON menggunakan perpustakaan Curl PHP dalam pembangunan PHP, sering kali perlu berinteraksi dengan API luaran. Salah satu cara biasa ialah menggunakan perpustakaan curl untuk menghantar post ...
