【发布时间】:2014-08-08 09:58:36
【问题描述】:
我需要从表中取出一个余额变量并将其插入到同一个表中以不同的值,我不确定是否正确,因为 SOL 要求我检查要使用的正确语法。
这是我的完整 php 脚本
<?php
// Connects to the database
$db = mysql_connect("$Sname","$Uname","$Pname") or die("Could not connect to the Database.");
$select = mysql_select_db("$Dname") or die("Could not select the Database.");
//Converts form values to simple variables
if ($_POST['submitButton']) {
$amount = $_POST['amount'];
$today = date("d/m/Y");
$time = date("h:i A");
$sql = "SELECT * FROM $UUname WHERE full='".$amount."'";
$result = mysql_query($sql) or die(mysql_error());
$num_return = mysql_num_rows($result);
if ($num_return == 1){
// inserts the values into the DB
mysql_query("UPDATE $TATname SET date='".$today."', time='".$time."', amount='".$amount."' WHERE user='{$_SESSION['user']}'");
$user = "{$_SESSION['user']}";
// get credits
$query = mysql_query("SELECT SUM(credit) FROM $UUname WHERE user='".$user."'");
$credit = mysql_result($query, 0);
// get debits
$query = mysql_query("SELECT SUM(debit) FROM $UUname WHERE user='".$user."'");
$debit = mysql_result($query, 0);
$bal = $credit - $debit;
$query = "UPDATE $UUname SET full='".$bal."'";
$update = mysql_query($query) or die(mysql_error());
header("Location: successful.php");
exit;
}
else
{
echo "Insufficient Funds";
}
}
?>
请在最后一行使用什么正确的语法,或者我这样做的正确方法是什么,因为我想告诉用户他们在尝试进行转账时余额不足。
【问题讨论】:
-
你想
UPDATE一个字段,而不是INSERT一个新字段,对吧? -
是的,还有 $amount 包含的内容,因为您在 $bal 中获取余额金额,然后 $amount 属于什么。
-
是的,我需要获取余额并将其插入一个已满的空值中,然后使用它来处理另一笔转账,以验证用户想要转账多少以及在说不足之前会有多少余额,所以我所做的是 $bal = $credit - $debit 行,然后得到 $bal 的余额并将其插入全值,我不知道这样做是否正确,但如果你有一个好的告诉用户余额不足的方法请告诉我
-
@Ricky,是一个空值,我需要用它来处理下一笔交易,告诉用户余额不足,下次他们尝试转账时,它会检查他们有多少想要转移,剩余多少,我认为这不是正确的方法,如果你有任何其他方式请告诉我
-
如果您编写插入查询,那么它将添加新的记录行,我认为您必须要更新字段以获取完整列名的 bal 金额