从表中删除一列,用PHP MYSQL更新另一列
我有两张桌子。一个表是比赛表(e2wedstrijden),另一个表是我的得分表(E2球队) 现在,我可以从e2wedstrijden表中删除匹配项。这很好用 但是如果我从那个表中删除一个匹配项,我就需要它。它还向表中添加或减少点数(“E2团队”)。我试着比较表格,但这不起作用 所以我想举个例子: 如果从表中删除一列,用PHP MYSQL更新另一列,php,mysql,sql,Php,Mysql,Sql,我有两张桌子。一个表是比赛表(e2wedstrijden),另一个表是我的得分表(E2球队) 现在,我可以从e2wedstrijden表中删除匹配项。这很好用 但是如果我从那个表中删除一个匹配项,我就需要它。它还向表中添加或减少点数(“E2团队”)。我试着比较表格,但这不起作用 所以我想举个例子: 如果($row['thuisscore']==$row['uitscore'])我的e2wedstrijden表中的行名称是什么。因此,如果这两个相同(如0-0或1-1或其他),则需要从表中减去1分。
($row['thuisscore']==$row['uitscore'])
我的e2wedstrijden表中的行名称是什么。因此,如果这两个相同(如0-0或1-1或其他),则需要从表中减去1分。但只有与我的e2wedstrijden表中的行“Thuisteam”和“Uitteam”相同的团队。因此,行Thuisteam(在“e2wedstrijden”中)需要在(“e2teams”)行Team中找到相同的结果。这需要对行Uitteam(在“e2wedstrijden”中)执行相同的操作,需要在(“e2teams”)中找到相同的结果
Thuisteam和Uitteam=荷兰语代表主队和awayteam。我认为我的错误是系统无法将e2wedstrijden的“Thuisteam”链接到e2teams中的团队,但不知道如何解决它
这是我的删除匹配项。php,它删除匹配项但不减少或增加点数:
<?php
if(!isset($_COOKIE['E2ingelogd'])) {
header("location:../../index.php");
}
include "../../connect.php";
$dbhandle = mysql_connect($hostname, $username, $password) or die("Could not connect to database");
$selected = mysql_select_db("login", $dbhandle);
$result = mysql_query("SELECT * FROM e2wedstrijden WHERE ID = ".$_GET['del']."");
while($row = mysql_fetch_assoc($result)){
if( $row['thuisscore'] == $row['uitscore']){
echo $row['thuisscore'];
mysql_query("UPDATE e2teams SET Punten = Punten-1 WHERE Team ='".$row['Thuisteam']."'");
mysql_query("UPDATE e2teams SET Gespeeld = Gespeeld-1 WHERE Team = ('".$row['Thuisteam']."'");
mysql_query("UPDATE e2teams SET Verloren = Gelijk-1 WHERE Team ='".$row['Uitteam']."'");
echo "Team is deleted";
}else{
echo 'Update Error!';
}
}
$table_1_delete = mysql_query("DELETE FROM e2wedstrijden WHERE ID = ".$_GET['del']."");
?>
希望您能提供帮助您在第二个查询中的“gespeeld”的等号后面加了一个括号:
mysql_query("UPDATE e2teams SET Gespeeld = Gespeeld-1
WHERE Team = ('".$row['Thuisteam']."'");
这是没有更新的吗?您在第二个查询中,在等号后面加了一个括号,用于“gespeeld”:
mysql_query("UPDATE e2teams SET Gespeeld = Gespeeld-1
WHERE Team = ('".$row['Thuisteam']."'");
这是没有更新的吗?您在第二个查询中,在等号后面加了一个括号,用于“gespeeld”:
mysql_query("UPDATE e2teams SET Gespeeld = Gespeeld-1
WHERE Team = ('".$row['Thuisteam']."'");
这是没有更新的吗?您在第二个查询中,在等号后面加了一个括号,用于“gespeeld”:
mysql_query("UPDATE e2teams SET Gespeeld = Gespeeld-1
WHERE Team = ('".$row['Thuisteam']."'");
这是没有更新的吗?如果不能100%确定数据模型的工作方式,那么重构现有数据模型可能是有意义的。可能有用的方法是创建汇总表的视图,并仅更新子/主表中的数据。。。。在视图层中聚合。可以看到mysql中的视图 <>如果你被你所拥有的数据模型(遗留应用程序等)所困扰,你可能会看到触发器,如果你必须修改两个表中的数据,你可能需要考虑存储过程或触发器,讨论和./P> 我想到的第三件事是相关的子查询,以及如何在某种更新中引用另一个表。但是,在这种情况下,您的ID不是代理密钥 另外,看看sql注入;我已经有一段时间没看PHP了,但是这些sql语句看起来像是用sting组合创建的
祝你好运,如果你不能100%确定你的数据模型是如何工作的,那么重构你的数据模型可能是有意义的。可能有用的方法是创建汇总表的视图,并仅更新子/主表中的数据。。。。在视图层中聚合。可以看到mysql中的视图 <>如果你被你所拥有的数据模型(遗留应用程序等)所困扰,你可能会看到触发器,如果你必须修改两个表中的数据,你可能需要考虑存储过程或触发器,讨论和./P> 我想到的第三件事是相关的子查询,以及如何在某种更新中引用另一个表。但是,在这种情况下,您的ID不是代理密钥 另外,看看sql注入;我已经有一段时间没看PHP了,但是这些sql语句看起来像是用sting组合创建的
祝你好运,如果你不能100%确定你的数据模型是如何工作的,那么重构你的数据模型可能是有意义的。可能有用的方法是创建汇总表的视图,并仅更新子/主表中的数据。。。。在视图层中聚合。可以看到mysql中的视图 <>如果你被你所拥有的数据模型(遗留应用程序等)所困扰,你可能会看到触发器,如果你必须修改两个表中的数据,你可能需要考虑存储过程或触发器,讨论和./P> 我想到的第三件事是相关的子查询,以及如何在某种更新中引用另一个表。但是,在这种情况下,您的ID不是代理密钥 另外,看看sql注入;我已经有一段时间没看PHP了,但是这些sql语句看起来像是用sting组合创建的
祝你好运,如果你不能100%确定你的数据模型是如何工作的,那么重构你的数据模型可能是有意义的。可能有用的方法是创建汇总表的视图,并仅更新子/主表中的数据。。。。在视图层中聚合。可以看到mysql中的视图 <>如果你被你所拥有的数据模型(遗留应用程序等)所困扰,你可能会看到触发器,如果你必须修改两个表中的数据,你可能需要考虑存储过程或触发器,讨论和./P> 我想到的第三件事是相关的子查询,以及如何在某种更新中引用另一个表。但是,在这种情况下,您的ID不是代理密钥 另外,看看sql注入;我已经有一段时间没看PHP了,但是这些sql语句看起来像是用sting组合创建的
祝你好运,有时候需要一双眼睛:-)有时候需要一双眼睛:-)有时候需要一双眼睛:-)有时候需要一双眼睛:-)有时候需要一双眼睛:-)