本文目录一览:
- 1、php,随时间增加,数字也增加
- 2、求如何用php把同一个顾客的合计自动生成,主要是本条记录要加上上条记录的金额,让合计金额累计生成
- 3、php如何用update更新多条数据
- 4、Thinkphp怎么批量更新数据
- 5、求助:用php一次更新10万条记录怎么办
- 6、PHP 连接数据库对原数据值进行增加,比如本来只有1,我如要增加100变成101
php,随时间增加,数字也增加
这个不用在PHP里写程序了,直接在数据库层做计划任务就可以了,创建一个event,每隔一个小时执行一次更新操作,帖子里应该有一个帖子的发表时间的字段如create_time,这个值是不会变的,每次执行任务的时候,获取到当前的时间戳,来和create_time做比较,如果两者之间的差值大于1小时,这增加44,,,,以此类推。。
求如何用php把同一个顾客的合计自动生成,主要是本条记录要加上上条记录的金额,让合计金额累计生成
用sql语句。
select sum(合计)as num from table where 顾客= '张';
这个得到 总值。。
然后呢 你下次插入数据 合计=金额+sum
php如何用update更新多条数据
楼主贴出的代码是主要代码不是完整代码,以下是对你贴出代码的修改,接收数组并批量更新
接收数据格式形如:
array(
0=array(
'id' = 1,
'title'= '标题1'
'url'= '...'
),
1=array(
'id' = 1,
'title'= '标题1'
'url'= '...'
),
)
注意在原来的基础上加了更新条件id,不加的话是会更新全部的。
A页面代码:
?php
$exec="select * from focusimg";
$result = mysql_query($exec,$link);
$i=0;
while($pt=mysql_fetch_array($result)){
?
tr onmouseover="this.className='admTr'" onmouseout="this.className=''"
td width="17%" align="right"标题?php echo $pt['id']; ?:input name="?php echo "focusimg[$i][id]"; ?" value="?php echo $pt['id']; ?" type="hidden"//td-php更新金额多增加
tdinput name="?php echo "focusimg[$i][title]"; ?" type="text" id="textfield" value="?php echo $pt['title'];?" size="30" //td-php更新金额多增加
td width="17%" align="right"链接?php echo $pt['id']; ?:/td
tdinput name="?php echo "focusimg[$i][url]"; ?" type="text" id="textfield" value="?php echo $pt['url'];?" size="30" / /td-php更新金额多增加
/tr
?php
$i++;
};
?
B页面代码:
?php
include 'conn.php';
$focusimg=$_POST['focusimg'];
foreach($focusimg as $k=$v) {
$exec="update chips set title='{$v[title]}',url='{$v[url]}' where id='{$v[id]}'";
mysql_query($exec, $link);
}
mysql_close($link);
echo "edit OK!";
?
Thinkphp怎么批量更新数据
thinkphp批量更新数据可以参考如下三种方法:
方法一:
//批量修改 data二维数组 field关键字段 参考ci 批量修改函数 传参方式
function batch_update($table_name='',$data=array(),$field=''){
if(!$table_name||!$data||!$field){
return false;
}else{
$sql='UPDATE '.$table_name;
}
$con=array();
$con_sql=array();
$fields=array();
foreach ($data as $key = $value) {
$x=0;
foreach ($value as $k = $v) {
if($k!=$field!$con[$x]$x==0){
$con[$x]=" set {$k} = (CASE {$field} ";
}elseif($k!=$field!$con[$x]$x0){
$con[$x]=" {$k} = (CASE {$field} ";
}
if($k!=$field){
$temp=$value[$field];
$con_sql[$x].= " WHEN '{$temp}' THEN '{$v}' ";
$x++;
}
}
$temp=$value[$field];
if(!in_array($temp,$fields)){
$fields[]=$temp;
}
}
$num=count($con)-1;
foreach ($con as $key = $value) {
foreach ($con_sql as $k = $v) {
if($k==$key$key$num){
$sql.=$value.$v.' end),';
}elseif($k==$key$key==$num){
$sql.=$value.$v.' end)';
}
}
}
$str=implode(',',$fields);
$sql.=" where {$field} in({$str})";
$res=M($table_name)-execute($sql);
return $res;
}
//测试
function test(){
$update_array=array();
for ($i=2; $i 7 ; $i++) {
$data=array();
$data['id']=$i;
$data['memeber_type']=2;
$data['memeber_type_state']=1;
$update_array[]=$data;
}
$res=$this-batch_update('yl_member',$update_array,id);
var_dump($res);
}
求助:用php一次更新10万条记录怎么办
检查下 php.ini 文件中的限制
upload_max_filesize
post_max_size
如果超出你提交的文件大小,就改大一些
改了之后重启 apache!
PHP 连接数据库对原数据值进行增加,比如本来只有1,我如要增加100变成101
没明白你的意思
你说的是 表里的 行呢
还是 行 里面的 值呢
表里面的行,直接insert 一条就可以
行里的值用 update tablename set x = 101 where 别的条件 limit 1;
这个x是你要修改的字段,101是修改后的值,x以前是=1的,limit 1是只修改一条的意思。