• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

同一页中屡次调用自定义函数,获取到了相同的值

php 搞代码 4年前 (2022-01-24) 23次浏览 已收录 0个评论

同一页中多次调用自定义函数,获取到了相同的值
我自定义一个函数pici(),它的作用是:获取到某流水号下的pi字段的值,然后+1(当没有这个流水号的记录时,取值0+1=1)

然后依次向数据库中插入几条记录,形式大概为:
流水号 pi 产品部件
1 1 门套..
1 2 门扇..
1 3 线条..
2 1 门套..
2 2 门扇..
2 3 线条..

但是在PHP中,用某页调用的时候,本应该每次都检索数据库,得到的值为1、2、3…… 这样子,可是,获取的值全部为1

部分代码附在下面,恳请答疑。先谢谢

这里是自定义函数pici()

function pici(){<br />$SQL = "select ifnull(max(pi)+1,'1') pi from bill where produce_no='预提交'"; <br />$query=mysql_query($SQL);<br />$rs=mysql_fetch_array($query);<br />$svc=$rs[pi];<br />return $svc;<br />}  <br />

下面是调用pici(),然后将3条数据插入数据库

<br /><br />//门扇参数<br />mysql_query("insert into bill (color,series,produce_no,pi,prod_type,stuff_id,z,val,amount,typein) values ('$_GET[color]','$_GET[series]','$produce_no','".pici()."','$prod_type','$norms_stuff_id','门扇型号','$_GET[model_1]','$men_shu','$_SESSION[login_id]')"); <br />//门套参数<br />mysql_query("insert into bill (color,produce_no,prod_type,pi,stuff_id,z,val,amount,typein) values ('$_GET[color2]','$produce_no','$prod_type','".pici()."','2','门套长','$mentaochang_shu','$mentao_shu_2','$_SESSION[login_id]')");   <br />//线条规格<br />mysql_query("insert into bill (color,produce_no,prod_typ<mark>(本文来)源gaodaimacom搞#^代%!码&网(</mark><pre>搞gaodaima代码

e,pi,stuff_id,z,val,amount,typein) values (‘$_GET[color3]’,’$produce_no’,’$prod_type’,'”.pici().”‘,’3′,’线条规格’,’$_GET[norms_3]’,’$xiantiao_shu’,’$_SESSION[login_id]’)”);

——解决方案——————–

本帖最后由 xuzuning 于 2012-11-30 16:29:00 编辑

怎么又开一贴?分多了?

我这样理解
流水号 pi 产品部件 produce_no
1 1 门套..
1 2 门扇..
1 null 线条.. 预提交
然后是
1 3 线条..
这样一个过程,对吧?
——解决方案——————–
还是 ifnull(max(pi)+1,’1′) 的问题
你可想一想:
如果 max(pi) 为 null 因为是“预提交”,pi 无值
那么 null + 1 等于什么呢?
如果等于 null 那么就返回 ‘1’
如果等于 1 那还是返回 1
是这样的吧?

你若想使 pi 递增,应统计非预提交的记录个数再加 1
——解决方案——————–
你有 where 1=2
能出结果才怪呢?

你去问问你的同事,他们会告诉你你哪里错了


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:同一页中屡次调用自定义函数,获取到了相同的值

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址