<?phpinclude("conn.php");include("header.php");$biaoti=$neirong=$tupian=$id="";$id=$_GET['id'];$sqlll="select * from news where id =".$id;$res=mysql_query($sqlll);$row=mysql_fetch_row($res);echo "+++++".$_GET['id'];if(isset($_POST['submit'])){ global $id; echo "++++".$id; $kzm=pathinfo($_FILES['tupian']['name']); date_default_timezone_set('Asia/Shanghai'); $fileName1=date(Ymd_Gis); $fileName='upload/'.$fileName1.'.'.$kzm['extension']; move_uploaded_file($_FILES['tupian']['tmp_name'],$fileName); if(empty($kzm['extension'])){ global $id; echo "+++++".$id; $sql="UPDATE news SET (biaoti,neirong,riqi) =('$_POST[biaoti]','$_POST[neirong]',now()) WHERE id =".$id; }else{ $sql="UPDATE news SET (biaoti,neirong,tupian,riqi) =('$_POST[biaoti]','$_POST[neirong]','$fileName',now()) WHERE id =".$id; } mysql_query($sql); }?> 这是代码,$id放在后面两个if里就都不能输出了,请问是怎么回事,如何解决。
回复讨论(解决方案)
if(isset($_POST['submit'])) 你用的是GET提交还是POST提交?
上一个链接传进来用的get,往数据库里填值用的post
如果 id 只在链接中传递,那么 post 的表单里不就没有 id 了吗?
如果 id 只在链接中传递,那么 post 的表单里不就没有 id 了吗?
是的,post不需要传递id,表单也没有地方填写id。
这是一个修改新闻的网页。
这是上一个页面,点修改传一个id过去。
到了第二个页面,通过传递的id,读出内容展示出来便于重新编辑
然后这个提交用的是POST,附上全部源码
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><?phpinclude("conn.php");include("header.php");$biaoti=$neirong=$tupian=$id="";$id=$_GET['id'];$sqlll="select * from news where id =".$id;$res=mysql_query($sqlll);$row=mysql_fetch_row($res);echo "+++++".$_GET['id'];if(isset($_POST['submit'])){ global $id; echo "++++".$id; $kzm=pathinfo($_FILES['tupian']['name']); date_default_timezone_set('Asia/Shanghai'); $fileName1=date(Ymd_Gis); $fileName='upload/'.$fileName1.'.'.$kzm['extension']; move_uploaded_file($_FILES['tupian']['tmp_name'],$fileName); if(empty($kzm['extension'])){ global $id; echo "+++++".$id; $sql="UPDATE news SET (biaoti,neirong,riqi) =('$_POST[biaoti]','$_POST[neirong]',now()) WHERE id =".$id; }else{ $sql="UPDATE news SET (biaoti,neirong,tupian,riqi) =('$_POST[biaoti]','$_POST[neirong]','$fileName',now()) WHERE id =".$id; } mysql_query($sql); }?><style type="text/css">body { background-image: url(images/bgbg.gif);}</style><div style="position:fixed; border:1px solid black; font-size:24px; line-height:25px; width:300px; height:60px; background:white; box-shadow:5px 5px 15px 5px #96EBEF; "><?php include("time.php"); ?> </div><form style=" text-align:center;" action="upNews.php" method="post" enctype="multipart/form-data"> <label for="textfield"></label> <div style="font-size:30px; height:30px; line-height:30px; text-align:center; color:#003; font-family:'造字工房悦黑(非商用)常规体'; "> 新闻标题</div> <p> <input value="<?php echo $row[1]?>" name="biaoti" type="text" class="wenbenkuang" id="textfield" size="40" style=" border:1px solid #96EBEF; height:30px; width:400px; box-shadow:5px 5px 20px 5px #96EBEF; " /> </p> <p> </p> <div style="font-size:30px; height:30px; line-height:30px; text-align:center color:#003; font-family:'造字工房悦黑(非商用)常规体'; "> 新闻内容</div> <textarea style="border:1px solid #96EBEF; height:300px; width:400px; box-shadow:5px 5px 20px 5px #96EBEF; " name="neirong" cols="60" rows="20" id="textarea"><?php echo $row[2]?></textarea> <p> <div style="font-size:30px; height:30px; text-align:center; line-height:30px; color:#003; font-family:'造字工房悦黑(非商用)常规体'; "> 上传图片</div> <input name="tupian" type="file" style=" box-shadow:5px 5px 20px 5px #96EBEF; border:1px solid #96EBEF; font-family:'造字工房悦黑(非商用)常规体'; " id="tupian" /> </p><div class="aritcle_card flexRow">
<div class="artcardd flexRow">
<a class="aritcle_card_img" href="/xiazai/code/11190" title="NT80 购物系统"><img
src="https://img.php.cn/upload/webcode/000/000/003/176526910949514.jpg" alt="NT80 购物系统" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a href="/xiazai/code/11190" title="NT80 购物系统">NT80 购物系统</a>
<p>功能说明:1 会员可申请开店功能2 购买在线扣除金额3 冲值卡自动生成4 支持2级分类5 数据库压缩和备份6 会员分5个级别7 商品带讨论8 自带融合论坛,可关闭打开9 密码找回功能10 新闻``滚动新闻``帮助中心11 后台设置前台会员的上传权限12 可关闭/打开商店13 会员自助发布商品功能14 用户问题咨询管理</p>
</div>
<a href="/xiazai/code/11190" title="NT80 购物系统" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
</div>
</div> <p> <input name="submit" style=" font-family:'造字工房悦黑(非商用)常规体'; color:black; background-color:#96EBEF; width:100px; height:60px; font-size:40px; border:3px solid black; line-height:60px; box-shadow:5px 5px 20px 5px #96EBEF; " type="submit" class="anniu" id="button" value="提交" /> </p> </form>表单不传递 id?那你如何知道谁被修改了?
表单不传递 id?那你如何知道谁被修改了?
26行,id通过一个变量的形式在数据库查询
你是怎么回事?
你自己都有测试代码的,为什么表单提交时没有打印出 id 的值都不知道呢?
你是怎么回事?
你自己都有测试代码的,为什么表单提交时没有打印出 id 的值都不知道呢?
你是怎么回事?
你自己都有测试代码的,为什么表单提交时没有打印出 id 的值都不知道呢?
我的意思是
12行可以echo出来,
点击提交后,在16行和25行输出为空。
在修改编辑页面 将get到的id的值放在一个隐藏表单中 一起提交就可以了 。不要用global;









