首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未将数据提交到数据库

问未将数据提交到数据库
EN

Stack Overflow用户
提问于 2013-04-02 03:41:40
回答 2查看 56关注 0票数 0

本应是简单的代码对我来说并不起作用。它正在显示HTML Woo!消息,但它实际上并没有提交数据。

代码语言:javascript
复制
$forgetKeyEmail = mysql_real_escape_string($_GET['key']);
$resetUsername = mysql_real_escape_string($_POST['inputUser']);
if ($_GET['do'] == "update") 
{
    $hasher = new PasswordHash(10, false);
    $resetPassword = $hasher->HashPassword(mysql_real_escape_string($_POST['inputPassword']));
    if ($_POST['inputPassword'] !== "")
    {
        mysql_query("UPDATE users SET password = '$resetPassword' WHERE forgetKey = '$forgetKeyEmail'");
        ?>
            <div class="alert alert-success" style="margin:0;">
            <strong>Woooo!</strong> Your password has been changed, you can now <a href="login.php">login.</a>
            </div>
            <?php
    }
    else 
    {
             ?>
            <div class="alert alert-error" style="margin:0;">
            <strong>Woops!</strong> You need to fill out a password!
            </div>
            <?php
    }
}

下面是供参考的HTML表单:

代码语言:javascript
复制
<form method="POST" class="form-horizontal" action="?do=update" >
  <div class="control-group">
    <label class="control-label" for="inputPassword">New Password</label>
    <div class="controls">
      <input type="text" id="inputPassword" name="inputPassword" placeholder="Password">
    </div>
  </div>
  <div class="control-group">
    <div class="controls">
      <button type="submit" class="btn btn-primary">Reset!</button>
    </div>
  </div>
</form>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-02 04:33:33

在下面的代码行中有一个小错误:

代码语言:javascript
复制
<form method="POST" class="form-horizontal" action="?do=update" >

无论何时提交表单,url都是..?do=update。

因为,我们收集(抓取)密钥值作为GET变量:

代码语言:javascript
复制
$forgetKeyEmail = mysql_real_escape_string($_GET['key']);

因此,$forgetKeyEmail是一个空字符串,因为url中没有密钥,即$_GET['key']未设置。

因此,将上面的html代码更改为:

代码语言:javascript
复制
<form method="POST" class="form-horizontal" action=?do=update&key=<?php echo $forgetKeyEmail; ?>

它会像护身符一样起作用。

票数 0
EN

Stack Overflow用户

发布于 2013-04-02 03:55:12

很可能,它就像区分大小写或表单名称拼写错误一样愚蠢。仔细检查表名、字段名、查询字符串值等的大小写。

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

https://stackoverflow.com/questions/15750518

复制
相关文章

相似问题

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