PHP怎么更新mysql数据库
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP怎么更新mysql数据库相关的知识,希望对你有一定的参考价值。
session_start();//读取本地文件
$userid = $_SESSION['userid']; //获取用户id
$datas = $_POST['datas'];
$list = $datas['list'];
foreach($list as $v)
$mysqli = mysql_query("INSERT INTO wupins (name,bm,userid,time) VALUES ('$v[name]','$v[bm]','$userid',now())"); //增到到wupins表
$id = mysql_insert_id(); //获取插入的每条数据的id
;
$mysqli_is = mysql_query("UPDATE users SET leve='$datas[leve]',jingjie='$datas[jingjie]',qian='$datas[qian]',gj='$datas[gj]',fy='$datas[fy]',xl='$datas[xl]' WHERE Id='$userid'"); //更新user表
$json_arr = array("rows"=>$mysqli_is,"wp_id"=>$id);
$json_obj = json_encode($json_arr);
echo $json_obj;
我想问的问题:
datas是一条json数据,里面有一个list数组;
前端通过轮询的方式一直往这里提交数据(datas),$list里面的数组一直在改变数量,我应该怎么改才不会一直插入重复的数据啊,还有怎么获取插入的每天数据的id
MySQL Update Set 更新数据
UPDATE 更新
UPDATE SET 语法用于修改更新数据表中的数据。
语法:
UPDATE tb_name SET column1 = new_value1,column2 = new_value2,… WHERE definition
该语法将数据表中符合 WHERE 条件的记录中的 column1 的值更新为 new_value1,column2 的值更新为 new_value2 ,以此类推。如果省略 WHERE 条件,则会将表中所有记录的 column 值进行更新。
例子:
<?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn)
die("连接数据库失败:" . mysql_error());
mysql_select_db("test", $conn);
mysql_query("set names \'gbk\'");
$sql = "UPDATE user SET email = \'xiaoming@163.com\' WHERE username = \'小明\'";
if(mysql_query($sql,$conn))
echo "更新数据成功!";
else
echo "更新数据失败:".mysql_error();
?>
更新前数据:
uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev.com 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiao@163.com 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf49 jack@gmail.com 1278061380
4 小王 e10adc3949ba59abbe56e057f20f883e 12345@163.com 1289632955
例子将 user 表中 username 为 小明 的 email 修改为 xiaoming@163.com 。
更新后数据:
uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev.com 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiaoming@163.com 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf49 jack@gmail.com 1278061380
4 小王 e10adc3949ba59abbe56e057f20f883e 12345@163.com 1289632955
UPDATE 表达式
UPDATE 语法允许 SET 后面跟表达式。
例子 1 :
UPDATE article SET pv = pv+1 WHERE id = 123
该例子让 id 为 123 的文章在被点击阅读的时候点击量加 1 。
例子 2 :
UPDATE persondata SET age = age*2, age = age+1
该例子 SET 后面跟了两个表达式:age = age*2(年龄加倍),age = age+1(再加 1 )。这种多个表达式的情况,是按照从左往右顺序执行的。
参考技术A 插入数据时,id自增,就不会重复,添加上时间字段,需要那一天的数据可以直接通过该字段查询,查询时可以用一个函数比对时间,看一下数据库手册,找到这个函数如何将 MySql 时间戳列更新为 PHP 上的当前时间戳?
【中文标题】如何将 MySql 时间戳列更新为 PHP 上的当前时间戳?【英文标题】:How to update MySql timestamp column to current timestamp on PHP? 【发布时间】:2011-08-17 16:25:07 【问题描述】:我想通过我的 PHP 代码手动更新数据类型为 timestamp
的列。
你能告诉我怎么做吗?
【问题讨论】:
是否必须是 PHP 时间戳而不是 mySQL 的NOW()
?
【参考方案1】:
使用这个查询:
UPDATE `table` SET date_date=now();
示例代码可以是:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
die('Could not connect: ' . mysql_error());
mysql_select_db("my_db", $con);
mysql_query("UPDATE `table` SET date_date=now()");
mysql_close($con);
?>
【讨论】:
当我们谈论时间戳时,我们通常指的是 GMT。这将给出带有服务器时区的日期。【参考方案2】:另一种选择:
UPDATE `table` SET the_col = current_timestamp
看起来很奇怪,但按预期工作。如果让我猜的话,我敢打赌这比打电话给now()
快一点。
【讨论】:
不应该很快,因为根据这个 (dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html) 它只是 now() 的同义词以上是关于PHP怎么更新mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章