首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用外键更新表

问用外键更新表
EN

Stack Overflow用户
提问于 2016-03-17 14:36:28
回答 1查看 71关注 0票数 2

我在和超时系统中创建了一个time。这是桌子

时刻表

代码语言:javascript
复制
| id | time id | time in | time out |
|  1 |    1    | 1:00 am |          |
|  1 |    2    | 1:013am |          |

id是外键,而time id是时间表主键。如何更新超时表?

下面是我在time中的代码

代码语言:javascript
复制
$id = $_GET['id'];
$timein = date('Y/m/d H.i.s');

$sql = "INSERT INTO time (id, timein)
        VALUES
        ('$id','$timein')
";
$query = mysql_query($sql);

mysql_close();

if(is_resource($query) and mysql_num_rows($query)>0){
    $row = mysql_fetch_array($query);
    echo $row["id"];
    }
echo $sql;

这是正确的,但我的问题是如何更新超时

这将针对特定的时间id,例如时间id 1。但我也希望更新超时。

我已经试过这样的方法了

代码语言:javascript
复制
$timeid = $_SESSION['timeid'];
$id = $_GET['id'];
$timein = $_POST['timein'];
$timeout = date('Y/m/d H.i.s');

$sql = "UPDATE time SET(time_id, id, timein, timeout)
        VALUES
        ('$time_id','$id','$timein','$timeout') WHERE id = $id
";
$query = mysql_query($sql);

mysql_close();

if(is_resource($query) and mysql_num_rows($query)>0){
    $row = mysql_fetch_array($query);
    echo $row["id"];
    }
echo $sql;

这是用来查看时间的上下文的代码,所以我如何才能得到编辑它的确切的时间it?

代码语言:javascript
复制
include_once 'dbconfig.php';
session_start();
$id = $_GET['id'];
$sql = "SELECT * FROM time WHERE id = $id";
$result = mysql_query($sql);
?>
while($row = mysql_fetch_array($result)){
echo "<tr>";
echo "<td><center>".$row['time_id']."</center></td>";
echo "<td><center>".$row['timein']."</center></td>";
echo "<td><center>".$row['timeout']."</center></td>";
echo "<td><center>".$row['totalmin']."</center></td>";
echo "<td><a href= \"timeout.php?id=".$row['time_id']." \"> timeout";
echo "</tr>";

由于MAWIA,更新是可以的,但是当我更新时,只有一个时间is会被更新。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-17 15:07:05

如果您想更新超时,我认为您不需要更新time_id、id和timein,因为您已经在第一个语句中插入了。因此,您的更新声明将是:

代码语言:javascript
复制
   $checkFk = mysql_query("SET FOREIGN_KEY_CHECKS=0");//turn off foreign key
   $sql = "UPDATE `time` SET `timeout`='$timeout' WHERE `timeid` = '$timeid'";
   $resetFk = mysql_query("SET FOREIGN_KEY_CHECKS=1");//turn on foreign key

不要使用mysql扩展--请看mysql改进扩展或pdo

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36063680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档