变量的值丢失了是怎么回事? 把if($submit)这个判断去掉,试试 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把if($submit)这个判断去掉,试试---------------那样的话,当页面一加载,修改过程就已经执行了 把if($submit)这个判断去掉,试试---------------还是不行 不行就在if($submit)判断外部和内部各echo一次$id,看是否相同。 不行就在if($submit)判断外部和内部各echo一次$id,看是否相同。----------------那肯定是不同的了,因为这个页面加载,$id是有值的,这时地址栏是:http://127.0.0.1/1/update.php?id=122点确定修改,执行if ($submit)中的内容,这时地址栏是:http://127.0.0.1/1/update.php$id的值因此就没有了 if($submit)是你表单提交后的操作!页面加多一个hidden表单,值为$_GET['id']类似<form action="update.php">......<input type="hidden" name="id" value="<?php echo $_GET['id'] ?>"><input type="submit" value="..submit.."></form>then:<?if ($submit){$sql1="update tztg set bt='$title',fbsj='$date' where id=".$_POST['id'];echo $sql1;$ddd=mysql_query($sql1) or die("<br>ÐÞ¸Äʧ°Ü");}?> 在不同的地方echo $id 看它的值是在哪丢失的 foolbirdflyfirst(湖水清澈) :还是不行,点确定页面重加载值就丢了esinzhong():点确定页面重加载值时丢的 $id是怎么得到的??如果是通过全局获得,那么就要看看register_globals是否关闭!否则还是老老实实的通过_GET或者_POST获得吧如果还是不行,那么就在if ($submit)里面再次获得这个$id吧~ '$id'要保存下来,最好放在SESSION中.你的'$id'是怎么传值的? '$id'要保存下来,最好放在SESSION中.你的'$id'是怎么传值的?-------------我想没有必要这样夸张的用到SESSION吧,只是简单的变量传值罢了!! $id是怎么得到的??如果是通过全局获得,那么就要看看register_globals是否关闭!否则还是老老实实的通过_GET或者_POST获得吧如果还是不行,那么就在if ($submit)里面再次获得这个$id吧~-----------------------------是通过全局来得到的,没有办法在if ($submit)里面再次获得这个$id,因为执行if ($submit)里面的东西的时候,URL已经变了:http://127.0.0.1/1/update.php,这样的URL怎么能获取$id呢? 那你就的放在IE地址里面传值比如http://community.csdn.net/Expert/topic/5396/5396978.xml?temp=7.087344E-02问号后面传值,那你就的REQUEST这个值 贴出你使用hidden表单的代码 我贴出全部的代码:<?include('connectdb.inc.php');?><html><head> <title>Ð޸ļǼ±íµ¥</title></head><body> <h2 align="center">ÐÞ¸ÄÍøÕ¾</h2><?$id=$_GET[id];$query ="select id,bt,fbsj from tztg where id='$id'";echo $query; $result=mysql_query($query) or die("<br>²éѯʧ°Ü"); $rows=mysql_num_rows($result); $row=mysql_fetch_array($result);?> <center> <table> <form name="form1" method="post" action="update.php"> <tr> <td>title</td><td><input type="text" name="title" size=10 value="<?echo $row[1]?>"</td> <br> <input type="hidden" name="hidden" value="<?php echo $_GET['id'] ?>"> <td>date</td><td><input type="text" name="date" size=10 value="<?echo $row[2]?>"</td> <tr> <td></td><td><input type="submit" name=submit value="È·¶¨"></td></tr> </form><?$id=$_GET[id];echo "ֵΪ£º$id";if ($submit){$id=$_GET[id];echo "ֵΪ£º$id"; $sql1="update tztg set bt='$title',fbsj='$date' where id=".$_POST['id']; echo $sql1; $ddd=mysql_query($sql1) or die("<br>ÐÞ¸Äʧ°Ü");}?> </table> </center> </body> </html> 是通过全局来得到的,没有办法在if ($submit)里面再次获得这个$id,因为执行if ($submit)里面的东西的时候,URL已经变了:http://127.0.0.1/1/update.php,这样的URL怎么能获取$id呢?------------也就是说:如果if ($submit)成立的话,$id是通过update.php这个文件中传值过来了,是吗??如果是这样,那么你可以在update.php文件中,建立一个隐藏域(比如:<INPUT TYPE="hidden" name="id" value=""> value:是你的$id的值),把$id这个值定义给这个隐藏域,然后,在if ($submit)这个判断语句中,这样获得这个$id:$id = $_POST['id'];就可以了!! 你把$submit写成$_POST['submit']试一试!! ????????????????<input type="hidden" name="hidden" value="<?php echo $_GET['id'] ?>">呵呵,改成<input type="hidden" name="id" value="<?php echo $_GET['id'] ?>">多多补习一下html知识呀。 <input type="hidden" name="hidden" value="<?php echo $_GET['id'] ?>">呵呵,改成<input type="hidden" name="id" value="<?php echo $_GET['id'] ?>">多多补习一下html知识呀。-----------------------这个是一个马虎的方面!另外如果:register_globals=off的话,if ($submit)你就必须写成if ($_POST['submit'])才能有效!!! 好用了,重点感谢foolbirdflyfirst(湖水清澈),也谢谢大家 各位哥哥姐姐,我想问一个问题,希望得到回答。 几个困惑,高分求解 散分? 一条有相当难度的SQL语句 用php怎么写一歌选课系统? 这个js调用方法怎么看啊?看糊涂了 变量无法赋值是怎么回事? 关于 PHP 进行 在线 人数 统计 的做发 请大家推荐一个PHP+MYSQL的收费空间吧。(继续请教) 用header函數可不可同時下載多個文件?怎樣用? 请教这两个SQL语句是否一个效果? 无限级的树,如:1\1.1\1.1.1,只要1.1.1本身或其任何一个父节点有权限,1.1.1就表示允许,判断1.1.1是否有权限,sql该如何写?
那样的话,当页面一加载,修改过程就已经执行了
还是不行
那肯定是不同的了,因为这个页面加载,$id是有值的,这时地址栏是:http://127.0.0.1/1/update.php?id=122点确定修改,执行if ($submit)中的内容,这时地址栏是:
http://127.0.0.1/1/update.php
$id的值因此就没有了
页面加多一个hidden表单,值为$_GET['id']
类似
<form action="update.php">
...
...
<input type="hidden" name="id" value="<?php echo $_GET['id'] ?>">
<input type="submit" value="..submit..">
</form>
then:
<?
if ($submit)
{
$sql1="update tztg set bt='$title',fbsj='$date' where id=".$_POST['id'];
echo $sql1;
$ddd=mysql_query($sql1) or die("<br>ÐÞ¸Äʧ°Ü");
}
?>
看它的值是在哪丢失的
点确定页面重加载值时丢的
如果是通过全局获得,那么就要看看register_globals是否关闭!否则还是老老实实的通过_GET或者_POST获得吧如果还是不行,那么就在if ($submit)里面再次获得这个$id吧~
你的'$id'是怎么传值的?
你的'$id'是怎么传值的?
-------------
我想没有必要这样夸张的用到SESSION吧,只是简单的变量传值罢了!!
如果是通过全局获得,那么就要看看register_globals是否关闭!否则还是老老实实的通过_GET或者_POST获得吧如果还是不行,那么就在if ($submit)里面再次获得这个$id吧~-----------------------------
是通过全局来得到的,没有办法在if ($submit)里面再次获得这个$id,因为执行if ($submit)里面的东西的时候,URL已经变了:http://127.0.0.1/1/update.php,这样的URL怎么能获取$id呢?
比如http://community.csdn.net/Expert/topic/5396/5396978.xml?temp=7.087344E-02
问号后面传值,那你就的REQUEST这个值
<?include('connectdb.inc.php');?>
<html>
<head>
<title>Ð޸ļǼ±íµ¥</title>
</head>
<body>
<h2 align="center">ÐÞ¸ÄÍøÕ¾</h2>
<?
$id=$_GET[id];
$query ="select id,bt,fbsj from tztg where id='$id'";
echo $query;
$result=mysql_query($query) or die("<br>²éѯʧ°Ü");
$rows=mysql_num_rows($result);
$row=mysql_fetch_array($result);
?>
<center>
<table>
<form name="form1" method="post" action="update.php">
<tr>
<td>title</td><td><input type="text" name="title" size=10 value="<?echo $row[1]?>"</td> <br>
<input type="hidden" name="hidden" value="<?php echo $_GET['id'] ?>">
<td>date</td><td><input type="text" name="date" size=10 value="<?echo $row[2]?>"</td>
<tr>
<td></td><td><input type="submit" name=submit value="È·¶¨"></td></tr>
</form>
<?
$id=$_GET[id];
echo "ֵΪ£º$id";
if ($submit)
{
$id=$_GET[id];
echo "ֵΪ£º$id";
$sql1="update tztg set bt='$title',fbsj='$date' where id=".$_POST['id'];
echo $sql1;
$ddd=mysql_query($sql1) or die("<br>ÐÞ¸Äʧ°Ü");
}
?>
</table>
</center>
</body>
</html>
------------
也就是说:如果if ($submit)成立的话,$id是通过update.php这个文件中传值过来了,是吗??
如果是这样,那么你可以在update.php文件中,建立一个隐藏域(比如:<INPUT TYPE="hidden" name="id" value=""> value:是你的$id的值),把$id这个值定义给这个隐藏域,然后,在if ($submit)这个判断语句中,这样获得这个$id:$id = $_POST['id'];
就可以了!!
<input type="hidden" name="hidden" value="<?php echo $_GET['id'] ?>">呵呵,改成<input type="hidden" name="id" value="<?php echo $_GET['id'] ?>">
多多补习一下html知识呀。
多多补习一下html知识呀。
-----------------------
这个是一个马虎的方面!
另外如果:register_globals=off的话,if ($submit)你就必须写成if ($_POST['submit'])才能有效!!!