热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用更新语句的未定义索引

如何解决《使用更新语句的未定义索引》经验,为你挑选了1个好方法。



1> Funk Forty N..:

它抛出了这个通知,因为你需要放在$newBalance = $_POST['newBalance'];里面if(isset($_POST['submit_btn'])){...}并验证它不是空的(或设置).

$newBalance="";

if(isset($_POST['submit_btn']) && !empty($_POST['newBalance']) ){

$newBalance = $_POST['newBalance'];

    $upsql = "UPDATE users SET Balance = Balance + '$newBalance' 
              WHERE Username='" . $obj->Username . "'";
    $stmt = $mysqli->prepare($upsql);
    $stmt->execute();
}

您也可以使用isset($_POST['newBalance'])而不是!empty($_POST['newBalance'])


旁注:您可能希望为按钮添加提交类型.

echo '';

然而,它可能不是必需的; 如果您仍然遇到问题,请尝试一下.


编辑:

echo '

Student Username: '.$obj->Username.'

';

echo '';

然后在

$newBalance = $_POST['newBalance'];

$username = $_POST['username'];

并将您的查询修改为

$upsql = "UPDATE users SET Balance = Balance + '$newBalance' 
          WHERE Username='".$username ."'";

我的报价可能有点偏僻

echo '';

您可能需要将其更改为

echo '';

编辑#2:

由于您已经在使用会话,因此执行此操作的另一种方法是为其分配变量并将其传递给您的查询.

$username = $_SESSION['Username'];

$upsql = "UPDATE users SET Balance = Balance + '$newBalance' 
          WHERE Username='".$username ."'";

编辑#3:

你在哪里

if(isset($_POST['search'])){
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);

用它替换它

if(isset($_POST['search'])){
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);

$student = $_POST['search'];
$_SESSION['student'] = $student;

echo $_SESSION['student']; // see what echos here

然后在你的查询中,执行:

$upsql = "UPDATE users SET Balance = Balance + '$newBalance' 
          WHERE Username='".$student ."'";

如果这不起作用,我不知道还有什么可以做的,这将是进一步的帮助.我的测试是确凿的并且有效.您的查询可能会失败,此时我没有更多的想法.


基于这种情况:

$_POST['search'] = "student1";

$student = $_POST['search'];

$_SESSION['student'] = $student;

// echo $_SESSION['student'];

$student2 = $student;

echo $student2; // will echo student1


推荐阅读
  • 我正忙于一个学校项目来学习MVC。但是我对php知之甚少。我有一个dbconnection文件, ... [详细]
  • Ihaveusedmysql_query()throughoutmyproject;butIvejustlearnedthatmysql_wasdeprecatedas ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • 本文介绍了在MySQL8.0中如何查看性能并解析SQL执行顺序。首先介绍了查询性能工具的开启方法,然后详细解析了SQL执行顺序中的每个步骤,包括from、on、join、where、group by、having、select distinct、union、order by和limit。同时还介绍了虚拟表的概念和生成过程。通过本文的解析,读者可以更好地理解MySQL8.0中的性能查看和SQL执行顺序。 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
  • 如何在php文件中添加图片?
    本文详细解答了如何在php文件中添加图片的问题,包括插入图片的代码、使用PHPword在载入模板中插入图片的方法,以及使用gd库生成不同类型的图像文件的示例。同时还介绍了如何生成一个正方形文件的步骤。希望对大家有所帮助。 ... [详细]
  • MySQL数据库锁机制及其应用(数据库锁的概念)
    本文介绍了MySQL数据库锁机制及其应用。数据库锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,数据是一种供许多用户共享的资源,如何保证数据并发访问的一致性和有效性是数据库必须解决的问题。MySQL的锁机制相对简单,不同的存储引擎支持不同的锁机制,主要包括表级锁、行级锁和页面锁。本文详细介绍了MySQL表级锁的锁模式和特点,以及行级锁和页面锁的特点和应用场景。同时还讨论了锁冲突对数据库并发访问性能的影响。 ... [详细]
  • 数据库技术:execute immediate
    首先在这里发发牢骚,指责下那些刻板的书写方式,不考虑读者理不理解,感觉就是给专业人员用来复习用的一样,没有前戏,直接就高潮,实在受不了!没基础或基础差的完全不知道发生了什么,一脸懵 ... [详细]
  • PHP mysqli 中文 乱码怎么办
    PHPmysqli中文乱码的解决办法:1、检查并修改html文件的编码;2、修改mysql数据库的排序规则为“utf8_general_ci”;3、在执行SQL语句之 ... [详细]
  • 面向对象风格<?php$connnewmysqli(localhost,username,password,database_name ... [详细]
  • PHP使用Mysqli类库实现完美分页效果办法mysqli类库
    php教程|php手册PHP,Mysqli,分页,mysqliphp教程-php手册PHP使用Mysqli类库实现完美分页效果的方法,mysqli类库代刷网是什么源码,vscode ... [详细]
  • 1.sql语句执行原理2.mysqli预处理<?phpheader(Content-Type:texthtml;charsetutf8); ... [详细]
  • 我正在编写此PHP程序,该程序将记录插入称为事件的表中。PHP代码是:<?php$ser ... [详细]
author-avatar
狂风DKC想毕业321
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有