通过FTP往我在host.sk申请的空间里面传了我设计的PHP论坛,但每次打开的时候,第一个页面通过“<a href="message_list.php?pal=1&p=0">活动安排</a>”传入pal和p两个参数,但每次进入了message_list.php的页面后,却总是提示查询不到数据,利用var_dump($pal)调试后发现$pal的值始终是NULL,不过调试的时候在loacalhost里面执行时,却又能够获取传入的参数。有没有哪位用过这个空间的,是不是这个空间有问题?谢谢
调试欢乐多
<?
session_start();include('func/db_conn.php');
include('func/db_func.php'); $num=0;
$row;
$res;
//var_dump($path);function selt($pal)
{
global $pal;
global $num;
global $res;
global $row;
//var_dump($pal);
//$SQLStr="SELECT * FROM message WHERE m_pal=$pal AND path is NULL ORDER BY m_time DESC";
$SQLStr="SELECT t1.*,t2.u_name FROM message t1,user t2 WHERE t1.m_pal=$pal AND t1.path is NULL AND t2.u_id=t1.u_id ORDER BY m_time DESC";
//var_dump($SQLStr);
$res=db_query($SQLStr);
$num=db_num_rows($res);
if($_SESSION['name']!="")
{
$user=$_SESSION['name'];
echo "<script>"
."var us='".$user."';"
// ."alert(us);"
."if(us!='')"
."{"
."var dl=document.getElementById('reg');"
// ."dl.style.display='none';" //登录完成后隐藏注册链接
."dl.innerHTML=' 您好!'+us;" //修改超链接文本
."dl.href='func/func.php?check=friend&us='+us;"
."var d2=document.getElementById('log');"
."d2.innerHTML=' 退出';"
."d2.href='func/func.php?check=ex';"
."}";
echo "</script>";
//alert(dl.value);
}
} $allt=0;
$allp=0;
$alltoday=0;
$alluser=0;
function selalltitle()
{
global $allt;
$SQLStr="SELECT * FROM message WHERE path IS NULL";
$res=db_query($SQLStr);
$allt=db_num_rows($res);
//var_dump($allt);
echo "<script>";
echo "var at=document.getElementById('alltitle');";
echo "at.innerHTML=".$allt;
echo "</script>";
}
function selallpost()
{
global $allp;
$SQLStr="SELECT * FROM message WHERE path IS NOT NULL";
$res=db_query($SQLStr);
$allp=db_num_rows($res);
echo "<script>";
echo "var ap=document.getElementById('allpost');";
echo "ap.innerHTML=".$allp;
echo "</script>";
}
function seltoday()
{
global $alltoday;
$time=date("y-m-d");
$SQLStr="SELECT * FROM message WHERE m_time LIKE '%".$time."%'";
$res=db_query($SQLStr);
$alltoday=db_num_rows($res);
echo "<script>";
echo "var atd=document.getElementById('alltoday');";
echo "atd.innerHTML=".$alltoday;
echo "</script>";
}
function seluser()
{
global $alluser;
$SQLStr="SELECT * FROM user";
$res=db_query($SQLStr);
$alluser=db_num_rows($res);
echo "<script>";
echo "var au=document.getElementById('alluser');";
echo "au.innerHTML=".$alluser;
echo "</script>";
}
$rs;
$rw;
$rm;
function selrw($pal,$id)
{
global $rs;
global $rw;
global $rm;
$SQLStr="SELECT t1.*,t2.u_name FROM message t1,user t2 WHERE t1.m_pal=$pal AND t1.path=$id AND t2.u_id=t1.u_id ORDER BY m_time DESC";
$rs=db_query($SQLStr);
//var_dump($SQLStr);
$rw=db_fetch_array($rs);
$rm=db_num_rows($rs);
//if($rw['u_id']=="" or $rw['u_id']=="NULL") $rm=db_num_rows($rs);
//else $rm=0;
//var_dump();
return $rm;
}
function navigate($pal)
{
$nv="";
if($pal==1) $nv="活动安排";
if($pal==2) $nv="闲聊";
if($pal==3) $nv="水吧";
if($pal==4) $nv="站务";
echo "<script>"
."var d=document.getElementById('navigate');"
."d.innerHTML=d.innerHTML+'->';"
."var e=document.createElement('<a>');"
// ."alert('".$nv."');"
."e.innerHTML='".$nv."';"
."e.href='message_list.php?pal=".$pal."&p=0';"
."d.appendChild(e);"
."</script>";
}
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.STYLE2 {
font-family: "宋体";
font-size: 12px;
font-weight: bold;
}
body {
font-size:14px;
height:auto;
background-image: url(img/1366x768.jpg);
}
--></style>
</head>
<div align="center">
<?include('up.html');?>
<?navigate($pal);?>
<script>
function says()
{
var path=<?=$pal?>;
location.href="message_post.php?pal="+path;
}
//根据传进来的版块代表值,判断显示的版块名称
function bk()
{
var p="<?=$pal?>";
var bk="";
if(p==1) bk="活动安排";
if(p==2) bk="闲聊";
if(p==3) bk="水吧";
if(p==4) bk="站务";
var id=document.getElementById("pk");
id.innerHTML="<font size='4' color='#FFFFFF'>"+bk+"</font>";
}
</script> <table width="750" border="1" cellpadding="0" cellspacing="0" bordercolor="#8DC4E4">
<tr>
<td colspan="7" bordercolor="#FFFFFF" bgcolor="#6699FF"><div align="center" class="STYLE2">
<div align="left">
<p align="right"><div align="left" id="pk"><font size='4' color='#FFFFFF'>活动安排</font></div>
<div align="right"><input type="submit" name="Submit" value="发布主题" onclick="says();" /></div>
</p>
</div>
</div> <div align="right"></div></td>
</tr>
<tr>
<td bordercolor="#8DC4E4"> </td>
<td bordercolor="#8DC4E4"><div align="center">标题</div></td>
<td bordercolor="#8DC4E4"><div align="center">作者/时间</div></td>
<td bordercolor="#8DC4E4"><div align="center">回复</div></td>
<td bordercolor="#8DC4E4"><div align="center">查看</div></td>
<td colspan="2" bordercolor="#8DC4E4"><div align="center">最后发表</div></td>
</tr>
<?
selt($pal);
if($num>0)
{
$check=$p+10;
for($i=0;$i<$num;$i++)
{
$row=db_fetch_array($res);
if($i>=$p && $i<$check)
{
echo "<tr>";
echo "<td><img src='image/1.gif'/></td>";
if(strlen($row['m_title'])>15)
{
echo "<td><a href='message_show.php?m_id=".$row['m_id']."&path=".$row['m_pal']."&p=0&id=".$row['m_id']."'>".substr($row['m_title'],0,10)."...</a></td>";
}
else echo "<td><a href='message_show.php?m_id=".$row['m_id']."& path=".$row['m_pal']."& p=0&id=".$row['m_id']."'>".$row['m_title']."</a></td>";
echo "<td> ".$row['u_name']."/".$row['m_time']." </td>";
echo "<td><label name='re'>".selrw($row['m_pal'],$row['m_id'])."</label></td>";
echo "<td>".$row['m_clk']."</td>";
echo "<td>".$rw['u_name']."/".$rw['m_time']."</td>";
echo "</tr>";
$j=$i+1;
}
}
}
?>
</table>
<table width="750" border="0" align="center">
<tr>
<td align="center">
<a href="message_list.php?p=0&pal=<?=$pal?>">第一页</a>
</td>
<td align="center">
<?
if($p>9)
{
$last=(floor($j/10)+10)-10;
echo "<a href='message_list.php?p=$last&pal=$pal'>上一页</a>";
}
else
echo "上一页";
?>
</td>
<td align="center">
<?
if($i>9 and $num>$check) //判断是否有下一页
echo "<a href='message_list.php?p=$j&pal=$pal'>下一页</a>";
else
echo "下一页";
?>
</td>
<td align="center">
<?
if($i>9) //判断目前显示的条数之后是否还有页面
{
$final=floor($num/10)*10;
echo "<a href='message_list.php?p=$final&pal=$pal'>最后一页</a>";
}
else
echo "最后一页";
?>
</td>
</tr>
</table>
<p> </p>
</div>
</body>
</html>
<?include('down.html');?>
<?selalltitle();?>
<?selallpost();?>
<?seltoday();?>
<?seluser();?>
<?
session_start();
$user=$_SESSION['name']; function dlu()
{
global $user;
//var_dump($user);
echo "<script>"
."var us='".$user."';"
."if(us!='')"
."{"
."var dl=document.getElementById('reg');"
// ."dl.style.display='none';" //登录完成后隐藏注册链接
."dl.innerHTML=' 您好!'+us;" //修改超链接文本
."dl.href='func/func.php?check=friend&us='+us;"
."var d2=document.getElementById('log');"
."d2.innerHTML=' 退出';"
."d2.href='func/func.php?check=ex';"
."}";
echo "</script>";
//alert(dl.value);
}?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.STYLE1 {font-size: 10px}
.STYLE2 {font-size: 14px; }
.STYLE3 {font-size: 16px; }
.STYLE4 {
font-size: 16px;
color: #33FF00;
font-weight: bold;
}
.STYLE5 {font-size: 16px; font-weight: bold; }
body {
font-size:14px;
height:auto;
background-image: url(img/1366x768.jpg);
}
-->
</style>
</head>
<?
include('func/db_conn.php');
include('func/db_func.php');
function seltitle($nm)
{
$SQLStr="SELECT * FROM message WHERE m_pal=".$nm ." AND path IS NULL";
$res=db_query($SQLStr);
$row=db_num_rows($res);
echo $row;
}
function selpost($p)
{
$SQLStr="SELECT * FROM message WHERE m_pal=".$p." AND path IS NOT NULL";
$res=db_query($SQLStr);
$row=db_num_rows($res);
echo $row;
}
function todaypost($p)
{
$time=date("y-m-d");
$SQLStr="SELECT * FROM message WHERE m_pal=".$p." AND m_time like '%".$time."%'";
$res=db_query($SQLStr);
$row=db_num_rows($res);
echo $row;
}
function lastpost($p)
{
try
{
$SQLStr="SELECT t1.*,t2.u_name FROM message t1,user t2 WHERE t1.m_pal=".$p." AND t1.u_id=t2.u_id ORDER BY m_time DESC";
$res=db_query($SQLStr);
$row=db_fetch_array($res);
if($row['u_name']!="" or $row['u_name']=="NULL")
{
db_data_seek($res,0);
echo $row['u_name']."/".$row['m_time'];
}
else
{
echo "—/—";
}
}
catch(Exception $e)
{
echo "——";
}
}
$allt=0;
$allp=0;
$alltoday=0;
$alluser=0;
function selalltitle()
{
global $allt;
$SQLStr="SELECT * FROM message WHERE path IS NULL";
$res=db_query($SQLStr);
$allt=db_num_rows($res);
//var_dump($allt);
echo "<script>";
echo "var at=document.getElementById('alltitle');";
echo "at.innerHTML=".$allt;
echo "</script>";
}
function selallpost()
{
global $allp;
$SQLStr="SELECT * FROM message WHERE path IS NOT NULL";
$res=db_query($SQLStr);
$allp=db_num_rows($res);
echo "<script>";
echo "var ap=document.getElementById('allpost');";
echo "ap.innerHTML=".$allp;
echo "</script>";
}
function seltoday()
{
global $alltoday;
$time=date("y-m-d");
$SQLStr="SELECT * FROM message WHERE m_time LIKE '%".$time."%'";
$res=db_query($SQLStr);
$alltoday=db_num_rows($res);
echo "<script>";
echo "var atd=document.getElementById('alltoday');";
echo "atd.innerHTML=".$alltoday;
echo "</script>";
}
function seluser()
{
global $alluser;
$SQLStr="SELECT * FROM user";
$res=db_query($SQLStr);
$alluser=db_num_rows($res);
echo "<script>";
echo "var au=document.getElementById('alluser');";
echo "au.innerHTML=".$alluser;
echo "</script>";
}
function selbz($bk)
{
global $name;
$SQLStr="SELECT u_name FROM user WHERE pal=".$bk;
$res=db_query($SQLStr);
$row=db_fetch_array($res);
// var_dump($row['u_name']);
echo $row['u_name'];
}
?>
<script language="javascript" src="js/jquery.js"></script>
<script>
function afterlog()
{ var user="<?=$user?>";
// alert(2);
// alert(user);
if(user!="")
{
// alert(3);
$(document).ready(function(){
$("#body").load(function(){ alert(4); })
});
}
}
//判断是否登录成功
function log(rs_log)
{
// alert(rs_log);
if(rs_log=="1")
{
// var dl=document.getElementById("log");
// dl.innerHTML="您好! "+"<?=$user?>"; //修改超链接文本
// dl.disabled="true";
// dl.readonly="true";
// var d2=document.getElementById("reg");
// d2.style.display="none"; //登录完成后隐藏注册链接
// alert(dl.value);
// afterlog();
}
}
</script>
{
global $pal;
global $num;
global $res;
global $row;
//var_dump($pal); //每当用这个在空间里面调试的时候,就直接显示NULL,但在localhost下面又是正常的
//$SQLStr="SELECT * FROM message WHERE m_pal=$pal AND path is NULL ORDER BY m_time DESC";
$SQLStr="SELECT t1.*,t2.u_name FROM message t1,user t2 WHERE t1.m_pal=$pal AND t1.path is NULL AND t2.u_id=t1.u_id ORDER BY m_time DESC";
//var_dump($SQLStr);
$res=db_query($SQLStr);
$num=db_num_rows($res);
if($_SESSION['name']!="")
{
$user=$_SESSION['name'];
echo "<script>"
."var us='".$user."';"
// ."alert(us);"
."if(us!='')"
."{"
."var dl=document.getElementById('reg');"
// ."dl.style.display='none';" //登录完成后隐藏注册链接
."dl.innerHTML=' 您好!'+us;" //修改超链接文本
."dl.href='func/func.php?check=friend&us='+us;"
."var d2=document.getElementById('log');"
."d2.innerHTML=' 退出';"
."d2.href='func/func.php?check=ex';"
."}";
echo "</script>";
//alert(dl.value);
}
}
get 过来的话 你不用$pal=$_GET['pal']; 来接受参数么?
get 过来的话 你不用$pal=$_GET['pal']; 来接受参数么?这样做果然就好了,谢谢,不过为什么在localhost下面又能直接取到值。顺便请教一下host的空间是不是不支持中文,我的数据库里面有几个用户名是中文的,但导入到host的数据库里面就变成乱码了?
你在localhost 能取到值可能跟你之前的global 有关系吧.或者是php.ini里打开了全局变量啥的参数.而服务器关闭了。
关于乱码 多数都是编码问题 不是不支持中文. 看下自己的数据库是什么编码的 将 数据库 文件 输出 都弄成一致的编码即可. 例如都是utf-8.
{
global $unm;
//var_dump($name);
$user=$name;
$ps=$pass;
$mail=$email;
$unm=$name;
$time=date("y-m-d g:i:s");
global $message;
//var_dump($user); $SQLStr="SELECT * FROM user WHERE u_name='".$user."'";
$res=db_query($SQLStr);
//var_dump(db_num_rows($res));
$ys=false;
db_num_rows($res)>0?$ys=true:$ys=false;
if($ys)
{
$message="此用户名已经使用";
}
else
{
if($ps!=$pass2)
{
$message="两次输入密码不一致!";
}
else
{
//var_dump($name);
//var_dump($user);
$SQLStr="INSERT INTO user(u_name, u_pass,u_mail,u_permission,u_day,u_img,u_qianming) "
."VALUES('$user','$pass','$email','2','$time','$touxiang','$file')";
//var_dump($SQLStr);
db_query($SQLStr);
$message="添加用户成功!";
//var_dump($message);
}
}
return $ys;}在这里func.php中调用
if($check==reg)
{
// var_dump($file);
$name2=$_POST['name2'];
$pass=$_POST['pass'];
$pass2=$_POST['pass2'];
$email=$_POST['email'];
$src=$_POST['src'];
$file=$_POST['file'];
reg($name2,$pass,$email,$pass2,$src,$file);
if($message=="添加用户成功!")
{
//var_dump($unm);
$_SESSION['name']=$unm;
$SQLStr="SELECT * FROM user WHERE u_name='".$unm."'";
$res=db_query($SQLStr);
$row=db_fetch_array($res);
$_SESSION['u_id']=$row['u_id'];
//reg($name,$pass,$email,$pass2,$headimg);
$rs_log="1";
}
}
但很奇怪,方法reg中,获得的$SQLStr的数据库命令,但每次执行完后,在数据库里面查看,每次都只添加了u_id,u_pass,u_permission这几个字段,而别的字段就全部为空,用var_dump测试时,$user,$pass,$email,$time,$touxiang,$file明明都有值,后来直接复制用var_dump($SQLStr)显示的SQL字符串到host.sk的phpMyAdmin里面却又能正常执行,请问这种情况究竟是什么原故导致的?
MYSQL表 user
1 u_id int(11) 否 无 AUTO_INCREMENT
2 u_name varchar(100) utf8_general_ci 否 无
3 u_pass varchar(100) utf8_general_ci 否 无
4 u_mail varchar(100) utf8_general_ci 否 无
5 u_permission int(10) 否 无
6 u_day datetime 是 NULL
7 u_posts int(11) 是 NULL
8 u_says int(11) 是 NULL
9 u_img varchar(500) utf8_general_ci 是 NULL
10 u_qianming varchar(200) utf8_general_ci 是 NULL
11 pal int(11) 否 无
var_dump($SQLStr)结果:
string(233) "INSERT INTO user(u_name, u_pass,u_mail,u_permission,u_day,u_img,u_qianming) VALUES('张三','123456','[email protected]','2','11-12-31 6:34:00','','http://www.foshanit.com/uploadfile/msn-picture/uploadpics/200710/thumb_20071026035447322.gif')" u_name如果为中文,执行完后数据库里头就直接是空白,英文就是正常的,我在localhost里面也是正常的,是不是也需要改php.ini?
include('func/db_conn.php');
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARACTER SET 'UTF8'");
mysql_query("SET CHARACTER_SET_RESULTS='UTF8'");