0

我知道我会得到你们的支持,mysql_**但我现在必须这样做,因为我已经深入到项目中,我不能回去重新开始。所以请温柔一点。

无论如何,我不明白为什么我的更新表不起作用!

这是代码:

    <?php

$host="localhost"; // Host name
$username="mydetails"; // Mysql username
$password="XXXXXXX"; // Mysql password
$db_name="mydetails"; // Database name
$tbl_name="members"; // Table name

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// get value of id that sent from address bar
$id=$_GET['id'];

// Delete data in mysql from row that has this id
$result = mysql_query ("UPDATE $tbl_name SET balance='$balance' WHERE id='$id'");


// if successfully deleted
if($result){
echo "The user has been banned successfully!";
echo "<BR>";
echo "<a href='suspend_users.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?>

<?php
// close connection
mysql_close();
?>

如果我删除$balance''留空或替换$balance为文本或数字,它将进入余额列,这意味着它可以正常工作并成功连接到数据库而没有任何问题。但是当我说它balance='$balance'根本不起作用时。

我确实有一个带有id="balance"and的输入字段,name="balance"因此不会丢失。

有人可以帮我解决这个问题而不给我一个使用的griffmysql_*吗?

谢谢

更新:

我的表单代码:

<tr>
<td bgcolor="#FFFFFF"><? echo $rows['id']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['username']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['email']; ?></td>
<td bgcolor="#FFFFFF"><? echo $rows['balance']; ?></td>
<td bgcolor="#FFFFFF"><input name="balance" type="text" id="balance" value="<? echo $rows['balance']; ?>" size="15"></td>
<td bgcolor="#FFFFFF"><a href="delete_ac.php?id=<? echo $rows['id']; ?>">Ban and Remove</a></td>
</tr>
4

4 回答 4

0

无法使用存储在全局数组 $_GET 或 $_POST 中的变量名称访问表单的值(取决于您在表单中使用的方法)。你可以试试这个:

// get value of id that sent from address bar
$id=$_GET['id'];

//get value of balance. i am supposing you have used get method in your form
$balance = $_GET['balance'];

// Delete data in mysql from row that has this id
$result = mysql_query ("UPDATE $tbl_name SET balance='$balance' WHERE id='$id'");
于 2013-02-12T06:48:17.350 回答
0

尝试这个

$result = mysql_query ("UPDATE ". $tbl_name ." SET balance='".$balance."' WHERE id='".$id."'");
于 2013-02-12T05:14:15.737 回答
-1

$balance永远不会在您的代码中设置。

尝试添加$balance = $_POST['balance']

或者如果表单有method="get"使用$balance = $_GET['balance'].

于 2013-02-12T05:37:19.880 回答
-1

像这样加上$tbl_name引号'$tbl_name'

于 2013-02-12T05:22:57.657 回答