作者shiajih (夏日)
看板PHP
标题[请益] 新手请教 网站搬家
时间Mon Feb 17 20:34:08 2014
最近帮朋友搬网站
遇到几个问题
有的解决(可能不是正确的解决方法)有的还没,所以想请教板友
1.从资料库读出的中文会显示"?????"
前端各个PHP网页,只要程式内有从资料库读出中文资料,就会显示"????"(英文正常显示)
目前解决方法是
各网页在读取资料库资料前,加这行code
mysql_query("set names big5");
如此便能正常显示中文
但浏览器上的中文还是无法显示,如图红框处
http://ppt.cc/WHrf
该中文是用变数储存,目前还不知道如何解决,暂直接用中文常数
2.後台会显示错误,且无法正常登入
後台登入页面 首先出现这项错误
http://ppt.cc/K630
登入後(不管帐密对不对)出现这项错误
http://ppt.cc/cSUf
看了一下应该是路径
於是把auth.php、login.php出错的地方改了一下
修改前的auth.php
<? include ("$DOCUMENT_ROOT/include/register_globals.php"); ?>
<? include ("$DOCUMENT_ROOT/include/config.php"); ?>
------------------------------------------------------
修改前的login.php
<? include ("$DOCUMENT_ROOT/include/config.php"); ?>
------------------------------------------------------
修改後的auth.php
<? define("CONFIG_DIR",dirname(__FILE__));?>
<? include CONFIG_DIR."/register_globals.php"; ?>
<? include CONFIG_DIR."/config.php"; ?>
-------------------------------------------------------
修改後的login.php
<? define("CONFIG_DIR",dirname(__FILE__));?>
<? include CONFIG_DIR."/config.php"; ?>
--------------------------------------------------------
完成後,两图的报错都消失
但还是登不进後台
不管帐密正确错误,按下登入,浏览器会进入login.php页(验证帐密的程式是这页)
但此时是全白的一页
照理说按下登入,如果帐密错会告知,帐密对就会登入後台
但它就是停在login.php且没任何反应
请问这些解决方法有问题吗?
以及如何顺利进入後台?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.157.111
1F:→ DongFeng:1.检查档案的编码是UTF8还是BIG5,资料与档案的编码要一致 02/18 01:11
进phpMyadmin,所有表的"排序规则"都是big5,这应该就是资料的编码吧?
档案的编码也确实是big5,但依然要加那段code才能正常显示中文
2F:→ DongFeng:2.先检查是否开启全域变数,我猜测是程式中有使用$_POST中 02/18 01:12
3F:→ DongFeng:的索引直接当作变数的缘故 02/18 01:12
这边不太懂
帐密传送方式是由後台index.php中的一个小页面(login_form.php)
以POST传送account与password到login.php进行确认
原本伺服器能执行,为何这个伺服器就不行呢?
4F:推 thitbbeb:把浏览器的编码改big5试试 02/18 08:43
5F:→ thitbbeb:编码要统一: mysql、档案、浏览器 02/18 08:43
7F:→ DongFeng:没记错的话资料库跟资料表的编码是分开的,也就是说有可 02/18 19:21
8F:→ DongFeng:能你的资料库非big5但你的资料表却是big5, 其实加那行也 02/18 19:21
9F:→ DongFeng:没什麽,我自己就算很确定各个编码都没问题也会加那行, 02/18 19:21
10F:→ DongFeng:至於网页标题的地方呈现???的问题,除非你<title>里头 02/18 19:21
11F:→ DongFeng:的字串也是从资料库捞出来,不然我认为应该是档案编码问 02/18 19:21
12F:→ DongFeng:题,检查你的<meta>跟档案编码 02/18 19:21
好的谢谢,网页标题也是从资料库捞的,编码问题大致上已解决
现在一直卡在後台登不进去..
※ 编辑: shiajih 来自: 140.119.73.82 (02/18 19:24)
13F:→ DongFeng:第二个问题假设你的修改後的路径都没问题,检查你的程式 02/18 19:29
14F:→ DongFeng:是否全域变数,php有个功能是能够直接取用POST或GET的索 02/18 19:29
15F:→ DongFeng:引作为变数,假设今天有一个$_POST[user]的资料进来,我 02/18 19:29
16F:→ DongFeng:在写程式的时候可以用$user的方式直接取用,而不用写$use 02/18 19:29
17F:→ DongFeng:r=$_POST[user]这种指定某某变数等於某某变数的方式取用 02/18 19:29
18F:→ DongFeng:,这是一个很方便但也很危险的功能,一般是不会开启的, 02/18 19:29
19F:→ DongFeng:而我假设上一个伺服器有开始这个功能而你的没有,自然就会 02/18 19:29
20F:→ DongFeng:因为不支援这样的写法而暴错。 02/18 19:29
感谢D大!!真的是全域变数的问题 旧虚拟主机是6~7年前申请的,当时确实用全域变数
现在已更正 谢谢!
※ 编辑: shiajih 来自: 140.119.157.111 (02/19 00:21)
21F:推 LPH66:补充一下楼上的那设定叫做 register_globals 02/19 17:12