如何更新SQL数据库中的数据

时间:2014-04-08 15:07:11

标签: php html mysql phpmyadmin

我已经构建了一个正常运行的登录页面,该页面将用户重定向到index.php文件。 从以前的帮助中,我能够获得工资并根据用户登录显示在页面上。这是数据库 user_registration 用户 >

user_id    username   password    email                 wage
1          johnsmith  jsmith99    jsmith@gmail.com      100
2          davidscott dscott95    davidscott@gmail.com  90

我坚持的部分是创建一个功能表单,用户可以将他们的工资更新到sql数据库。

有人可以帮我解决php代码吗? 这是我已有的表格:

<form id="change-wage" action="update.php" method="post">
  <input type="text" id="new_wage" name="new_wage">
  <input type="button" value="Save">
</form>
编辑:这是代码,目的是用户可以通过填写文本框并按提交来更新表中的工资值。任何想法我怎么能解决这个问题?&gt;

<?php  //CHANGING THE WAGE
$username = '$_SESSION['MM_Username'];';
if (isset($_POST['submit'])){
        $wage = $_POST['wage-new'];
        //connect to server
        mysql_connect ("localhost","root","") or die ("Could not connect");
        mysql_select_db("user_registration") or die ("Could not connect to the database");

    mysql_query ("UPDATE users SET wage='$wage' WHERE username = '$username'")     or die ("Could not update");
}


    ?>

2 个答案:

答案 0 :(得分:1)

我不会给你代码,除非你像以前的评论员说的那样证明。但是我会给你一个概述,这样你就可以自己动手了。

update.php

Check if your is logged in.

if TRUE, continue.

get the new wage from the form

$new_wage = $_POST['new_wage'];

Be sure to validate and clean the $new_wage variable.

Next stage assumes your using PDO

$params = array($new_wage, $logged_in_user_id);

$update = "UPDATE user_registration SET wage=? WHERE user_id=?";

$pdo->prepare($update);
$pdo->execute($params);

答案 1 :(得分:0)

首先,如果您使用会话变量,请确保启动会话 - session_start();

$username = '$_SESSION['MM_Username'];';

应该是

$username = $_SESSION['MM_Username'];(不带单引号)

$wage = $_POST['wage-new'];

应该是

你在html文件中命名

$wage = $_POST['new_wage'];

您正在选择数据库user_registation,我认为它应该是user_registration

最后,考虑转换到PDO或mysqli。