在输入两列的值后自动写入第三列?

jdbreeze 2004-06-25 11:11:03

<td align="left"><?php echo "Address:"; ?>
<input class="inputbox" type="text" name="address" id="address" size="20" maxlength="20" value="<?php echo $row->address; ?>" />
</td>

<td align="left"><?php echo "room:"; ?>
<input class="inputbox" type="text" name="room" id="address" size="20" maxlength="20" value="<?php echo $row->room; ?>" />
</td>


我想在把address和room通过表单输入mysql数据库的address列和room列的时候,在同一个表的列text中自动写入address的值和room的值。该怎么写呢?
...全文
113 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzkd 2004-06-25
  • 打赏
  • 举报
回复
哦不对...忘了

然后再
$two="update your_table set text=text+$_POST['address']+$_POST['room'] where .....";


要加where 不然的话,就完了
lzkd 2004-06-25
  • 打赏
  • 举报
回复
如果列text中是有值的,又不想覆盖,只是增加
是不是改掉这句就可以了:$temp=$_POST['test']+$_POST['address']+$_POST['room'];

不可以,

两个方法可以解决,
一是取出text中的值(这你应该会的哦?)
设text的值你放到$temp里面
则$temp=$temp+$_POST['address']+$_POST['room'];

后面就一样了.

二是,你得知道你增加的是哪一条,就可以

$one="insert your_table (address,room) values ('$_POST[address]','$_POST[root]')";

然后再
$two="update your_table set text=text+$_POST['address']+$_POST['room']";
jdbreeze 2004-06-25
  • 打赏
  • 举报
回复
如果列text中是有值的,又不想覆盖,只是增加
是不是改掉这句就可以了:$temp=$_POST['test']+$_POST['address']+$_POST['room'];
ccterran 2004-06-25
  • 打赏
  • 举报
回复
是要这样么

<form name="form1">
<td align="left">
<input class="inputbox" type="text" name="address" id="address" size="20" maxlength="20" value="" onKeyUp="show()" />
</td>

<td align="left">
<input class="inputbox" type="text" name="room" id="room" size="20" maxlength="20" value="" onKeyUp="show()" />
</td>
<td align="left">
<input class="inputbox" type="text" name="full" size="20" maxlength="20" value="" />
</td>
</form>
<script>
function show(){
var o=document.form1;
o.full.value=o.address.value+o.room.value;
}
</script>
lzkd 2004-06-25
  • 打赏
  • 举报
回复
我想在把address和room通过表单输入mysql数据库的address列和room列的时候,在同一个表的列text中自动写入address的值和room的值。该怎么写呢?

$tmp=$_POST['address']+$_POST['room'];
$one="insert your_table (address,room,text) values ('$_POST[address]','$_POST[root]','$tmp')";
mysql_query($one);

应该是这样,楼主
lzkd 2004-06-25
  • 打赏
  • 举报
回复
这个...上面已经写的很清楚了.代码都给你了.想一下应该可以懂呀.
就按xuzuning(唠叨) 的好了.

我写的稍乱了一点.
jdbreeze 2004-06-25
  • 打赏
  • 举报
回复
对的,的确初学,非常感谢各位。我的意思是说:

数据库有个表A: no, name, address, room, text,
网页上有个表单,让用户填no, name, address, room, text

写到数据库的时候,no,name,address,room填的什么就存的什么;text是存的用户填的三样之和adress+room+text.

lzkd 2004-06-25
  • 打赏
  • 举报
回复
个人觉得是楼主初玩PHP,表达不够清楚
xuzuning 2004-06-25
  • 打赏
  • 举报
回复
有点乱了吧?
“我想在把address和room通过表单输入mysql数据库的address列和room列的时候,在同一个表的列text中自动写入address的值和room的值。该怎么写呢?”

$address = $_POST['address'];
$room = $_POST['room'];
$sql = "insert into tbl_name (address,room,text) values ('$address','$room','$address$room')";
mysql_query($sql);

后来又说“如果列text中是有值的,又不想覆盖”
那么就不是插入而是改写了
$address = $_POST['address'];
$room = $_POST['room'];
$sql = "update tbl_name set text=concat(text,'$address$room') where address='$address' and room='$room'";
mysql_query($sql);

lzkd 2004-06-25
  • 打赏
  • 举报
回复
我用了表单,有个submit按钮,应该不需要insert语句的吧。

***************

汗...好象就我知道是不可以,不过我也不是高手.....
jdbreeze 2004-06-25
  • 打赏
  • 举报
回复
我用了表单,有个submit按钮,应该不需要insert语句的吧。
submit按了以后就把address和room输入数据库的address列和room列了,自动写入address的值和room的值代码写在哪里?

初学,多多指教。

ccterran(iwind)的方法真不错!可是text是和address在同一个表单里,一样要填的,
<td align="left">
<input class="inputbox" type="text" name="room" id="room" size="20" maxlength="20" value=""/>

在submit的时候,想将它的值再加上address和room再存到数据库。这样好像不行吧?

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧