PHP数据访问易错点(20161030)

易错点:

1.造对象的时候括号里面的参数 写错了

$db = new MySQLi("localhost","root","789","1016");

2.牵扯到传值的,前面的名字和后面的名字不匹配

<form action="1028afternoonaddchuli.php"  method="post">

<div>代号:<input type="text" name="code"/></div>

<div>姓名:<input type="text" name="name"/></div>

$code = $_POST["code"];

$name = $_POST["name"];

3.传过来的值返回的数组和sql语句写的不一样

$code = $_POST["code"];

$name = $_POST["name"];

$sql = "insert into info values(‘{$code}‘,‘{$name}‘,

{$sex},‘{$nation}‘,‘{$birthday}‘)";

4.sql语句拼接的时候出错,少了单引号、双引号、括号(花括号可以不写,但为了防止出错还是写上),添加的时候列数不匹配

5.只要sql语句没问题,执行就没问题。如果执行对了没有查出数据,有可能是漏掉了中间的 结果集对象

输出调错误(先停止跳转,然后输出sql语句查看)

如果页面跳转不了,处理页面又无法直接用浏览器查看,就在处理页面上先把跳转语句注释了,然后输出sql语句页面就不会跳转,就会输出sql语句,查看写的语句是否正确(值,标点符号是否正确,是否漏了空格或者标点符号)

$sql = "insert into info values(‘{$code}‘,‘{$name}‘,

{$sex},‘{$nation}‘,‘{$birthday}‘)";

echo $sql;

//header("location:1028afternoonmain.php");

如果输出的sql语句有的为空,说明空的地方的变量有问题,

update info set

name=‘‘,sex=1,nation=‘n001‘,birthday=‘0000-00-00

00:00:00‘ where code=‘‘

此时就在取变量的地方输出空的变量,如果没有值或者提示undefind就说明取变量的地方有问题,这个时候就要查看取值 前后的名字是不是一样,取值方式是不是一样

$code = $_POST["code"];

$name = $_POST["name"];

$sex = $_POST["sex"];

$nation = $_POST["nation"];

$birthday = $_POST["birthday"];

echo $birthday;

时间: 2024-10-13 21:11:39

PHP数据访问易错点(20161030)的相关文章

第三方插件处理 json数据的易错点

在项目中,经常会对一json数据的处理,时不常也会报出一些错误,这些错误也是自己不够细心导致的.在这里也做一个小小的归纳,我每次处理前端页面列表数据时,都喜欢会 jquery 的模版(jquery template.js),简单明了,只需要后台传入处理好的“json” 数据,就ok了.但有时,需要我们编辑列表的数据,并传到后台处理:这个时候,就需要对前端数据进行处理成json数据字符串,使用ajax异步传入到后台,反序例化json字符串对象,并加以更到数据库中:就是这个环节,我几次都会报错,并且

细节!重点!易错点!--面试java基础篇(一)

今天来给大家分享一下java的重点易错点部分,也是各位同学面试需要准备的,欢迎大家交流指正. 1.java中的main方法是静态方法,即方法中的代码是存储在静态存储区的. 2.任何静态代码块都会在main方法之前执行. 3.java程序的初始化顺序:原则:静态优先于非静态,且只初始化一次:父类优先于子类:按照成员定义顺序初始化.例顺序:父类静态变量,父类静态代码块,子类静态变量,子类静态代码块,父类非静态变量,父类非静态代码块,父类构造函数,子类非静态变量,子类非静态代码块,子类构造函数. 4.

细节!重点!易错点!--面试java基础篇(二)

今天来给大家分享一下java的重点易错点第二部分,也是各位同学面试需要准备的,欢迎大家交流指正. 1.字符串创建与存储机制:当创建一个字符串时,首先会在常量池中查找是否已经有相同的字符串被定义,其判断的依据是String类型equals的返回值,若已经定义,则直接获取对其的引用.此时不需要创建新的对象,如果没有定义,首先创建这个对象,然后把它加入到字符串池中,再将它的引用返回.(例:new String(”aaa“)可能创建了1个或者2个对象,如果常量池中原来有aaa那么之创建了一个对象,如果没

Javascript易错知识点

? JS易错知识点总结: == 和 === 的区别: ==:判断两个变量的值是否相等. ===:判断两个变量的类型和值是否都相等,两个条件同时满足时,表达式为True. switch中break的作用: 如果一个case后面的语句,没有写break,那么程序会向下执行,而不会退出: 例如:当满足条件的case 2下面没有break时,case 3也会执行 1 var num = 2; 2 switch(num){ 3 case 1: 4 alert('case 1'); 5 break; 6 c

PHP数据访问基础知识(20161028)

数据访问 动态页面的特征:能够读取数据库,网页的内容都是从数据库读出来的,而不是写死的 所有的程序归根结底都是对数据的增删改查 如何用服务器的PHP来操作服务器的MySQL,Apache则是用来管理,接收用户的请求,返回用户的请求.信息 要想实现数据访问,首先要在PHP和MySQL之间建立一个数据的通道,即:建一个连接,造一个连接对象 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http

实体类、数据访问类、属性扩展

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 实体类_数据访问类.App_Code { public class Users { private string _username; //封装 /// <summary> /// 用户名 /// </summary> public

GLES &amp; Shader Language 易错集锦

1. vertex shader 和 fragment shader 通过varying变量传递数据,  如下代码在编译fragment shader时候会提示编译错误 vertex shader Fragment shader varying vec4 v_color; \n attribute vec3 v_Position; \n attribute vec4 f_Color; \n void main(void) \n { \n gl_Position = vec4(v_Position

ADO.NET(完整修改和查询、实体类,数据访问类)

一.完整修改和查询 在编写c#语句时需考虑到用户体验,例如在编写修改语句时,需要考虑到输入的内容在数据库中是否能够找到. 中间变量运用. 1.先查 2.执行操作 完整修改语句: bool has = false; Console.Write("请输入要修改的用户名:"); string Uname = Console.ReadLine(); //到数据库中查询输入的用户名是否存在 SqlConnection conn = new SqlConnection("server=.

软考程序员新手易错笔记

1.●标准化对象一般可分为两大类:一类是标准化的具体对象,即需要制定标准的具体事物:另一类是  (4)  ,即各种具体对象的总和所构成的整体,通过它可以研究各种具体对象的共同属性.本质和普遍规律. (4) A.标准化抽象对象    B.标准化总体对象    C.标准化虚拟对象    D.标准化面向对象 [解析]:标准化对象一般可分为两类:一类是标准化的具体对象:另一类是标准化的总体对象. 2.●用二进制加法器对二-十进制编码的十进制数求和,当和大于1010时,  (5)  . (5) A.不需要