代码如下:<?php
if($_GET["index"]==1){
$title="校园信息发布论坛--书刊信息";
$table=bk_topic;
}
if($_GET["index"]==2){
$title="校园信息发布论坛--家电信息";
$table=e_topic;
}
if($_GET["index"]==3){
$title="校园信息发布论坛--求助信息";
$table=help_topic;
}
if($_GET["index"]==4){
$title="校园信息发布论坛--家教信息";
$table=teach_topic;
}
echo $table;
if(($_POST["addtopic"])&&($islogin===true)){
$sql="insert into ".$table." values('','$_SESSION[id]','$_POST[topic_name]','$_POST[topic]',now())";
echo $sql;
mysql_query($sql);
echo "<script>alert('发表成功');</script>";
}
那条insert语句显示的时候没有$table的值,但是我在if外面显示的时候$table有值.怎么回事啊?
if($_GET["index"]==1){
$title="校园信息发布论坛--书刊信息";
$table=bk_topic;
}
if($_GET["index"]==2){
$title="校园信息发布论坛--家电信息";
$table=e_topic;
}
if($_GET["index"]==3){
$title="校园信息发布论坛--求助信息";
$table=help_topic;
}
if($_GET["index"]==4){
$title="校园信息发布论坛--家教信息";
$table=teach_topic;
}
echo $table;
if(($_POST["addtopic"])&&($islogin===true)){
$sql="insert into ".$table." values('','$_SESSION[id]','$_POST[topic_name]','$_POST[topic]',now())";
echo $sql;
mysql_query($sql);
echo "<script>alert('发表成功');</script>";
}
那条insert语句显示的时候没有$table的值,但是我在if外面显示的时候$table有值.怎么回事啊?
echo $table; //这里显示有值,表示确有 index 传入
if(($_POST["addtopic"])&&($islogin===true)){//这个 $islogin 是在哪里定义的?
$islogin是在if语句前面定义的 判断有没有登录用的 它的值是为true
table的使用是紧跟在定义之后,还是进入到其他函数了?
这只是notice不是错误,不影响结果。你看我的代码就知道了并没有进入其他函数
echo $table . '<br/>';
//if(($_POST["addtopic"])&&($islogin===true)){
$sql="insert into ".$table." values('','$_SESSION[id]','$_POST[topic_name]','$_POST[topic]',now())";
echo $sql;
//mysql_query($sql);
//echo "<script>alert('发表成功');</script>";
//}
//把这里运行的结果帖出来
我觉得是不是这个问题,我的$_GET[index]是从url得到的,当单击表单的提交按钮执行你贴出来的if语句,但是单击提交按钮会刷新页面,改变了url的值没有了index参数,使得要执行if语句时$table没有值。是这样的吗?