
正文
php数据库不能编辑,php数据库不能编辑怎么办
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
php编写修改用户信息程序时,数据库总是不能实现修改。
1、主要是查看SQL查询是否执行成功,另外也可以把echo $sql放在执行前,当需要修改的数据不存在(0条修改)的时候sqlsrv_query执行会成功。
2、你少贴了update的 模板的代码。你去检查一下update的模板里面的ID是GET方式传过来的,还是POST过来的。例如 这个id就是 GET方式的。 这个就是POST方式的。
3、这是因为应用程序可能会对数据进行缓存,以提高访问速度。数据库连接问题:如果您无法在实际应用中看到修改后的数据,可能是因为应用程序连接的不是您修改过的数据库。phpMyAdmin中文版是一个用PHP编写的,可以通过互联网控制和操作MySQL。通过phpMyAdmin中文版可以完全对数据库进行操作。
4、亲,mysql_query()函数返回值为语句执行成功与否,并不能表示有没有更新过记录。可用:mysql_affected_rows()检测有没有更新成功。
5、{$userid} 没值啊。 这个变量你在哪初始化的,代码上都没看到你赋值。他就是空呗 当然就报错了。
6、在mysql数据库用php编写微信小程序会遇到的问题是因为数据库不支持表情。解决办法是:将字符集改为utfmb4。将emoji表情转义,调用时再转换回去即可。
相关问答
Q1: 在我这个PHP程序里为什么提示修改成功,而在数据库里却没有修改,那里有...
你好!insert into message(id,user,title,content,lastdate)values(,$_POST[user],$_POST[title],$_POST[content],now();这句错误,你输出这个语句后,用命令执行一下就知道,一,前边多一个逗号,仅代表个人观点,不喜勿喷,谢谢。
是不是指前台显示添加成功。而进后台时数据没变化,但刷新后台页面数据才变化?是不是这种问题?如果是你可能需要用事务来完成。
不是变量那里引号的问题。你把错误提示打开,如果没有插入成功,肯定是有错误提示的。你那个Success又不能真正地表示插入成功了。。
你提示成功的那句话和你数据库操作根本没关联在一起,当然会每次都提示成功了。数据库操作失败的原因是你的SQL语句中,没有给变量加上单引号。虽然你平时在双引号中使用PHP变量加不加单引号都没关系,但是在SQL语句中不加引号是会产生错误的。将你的SQL语句修改下就应该没问题了。
#Resource IDXX 类似的字符串。$r是个资源(姑且这么称呼吧)。要使用mysql_fatch_array()函数把数据取了来,放到数组里。参数:while($result=mysql_fatch_array($r)){ list[] = $result;} print_r($list);楼主你试试,我平时都用封装过的数据库类,具体输出很少用了,不过应该是这样子。
Q2: PHP无法修改数据库值,附代码(基本都是抄的书上的)
详见:ThinkPHP0完全开发手册 13 CURD操作 更新数据(Update):为了保证数据库的安全,避免出错更新整个数据表,如果没有任何更新条件,数据对象本身也不包含主键字段的话,save方法不会更新任何数据库的记录。
你用的是sqlserver还是mysql? 我估计你用的是sql server,但这些是mysql代码,在mysql中的运行是没有任何错误的。
你的数据类型不对应。比如你的数据库是int类型,但是你存入的数据是varchar字符串类型,就会报错。
* 180);//将新的m和change_at写入数据库 save_m($m,$change_at);return $m;} 其中的几个函数read_m(),get_change_at(),save_m()根据具体的数据库结构写功能,也可以不要用函数直接把数据库操作代码写在那边。这样就能保证每次程序取到的值和数据库自动更改的情况下是一样的。
请在$row_view[]=array(...这行前面加上var_dump($row);,看看输出的数据里面是否包含主键。
Q3: php中写不进数据库
这种情况你应该去检测一下你的conf里面的配置文件是否正确,第一就是数据库链接信息,第二就是db_prefix 这个配置,这个配置是数据库前缀名,默认是tp_把。
往数据库里插入数据不能用双引号。改成这样。query=insert into user(name,sex,psd,email,miv,mid) values(‘$name’,‘$sex’,‘$psd1’,‘$email’,‘$qst’,‘$as’);像这样的问题,你直接echo一下 然后手动插入数据库就知道了。
mysql_query(); 括号里是不需要加分号的,另外,如楼下所说,你把括号里语句先echo出来看一看有没有错误,这个地方本来就是比较容易出错的。而你上面写的显然是写了。另外,单引号和双引号要交叉着用,双引号里是单引号,单引号里是双引号。还是那句:好好检查你的mysql_query()语句。
sql写错了,养成一个好的习惯,要拼接sql语句的话,接了后先echo $sql来看一看有没有问题。你那里values()里面的变量被单引号包着,单引号内的变量是不会被解析的,被当作字符串的。
Q4: 帮忙看下这个php不能向数据库插语句是怎么回事
这个情况,首先你要搞清楚你的PHP当前的运行环境 get_magic_quotes_gpc();如果你的服务器打开了magic_quotes_gpc,那么传过来的值会自动addslashes()。如果没有打开,你就需要用addslashes对传入的值进行转义!addslashes 返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。
sql写错了,养成一个好的习惯,要拼接sql语句的话,接了后先echo $sql来看一看有没有问题。你那里values()里面的变量被单引号包着,单引号内的变量是不会被解析的,被当作字符串的。
这个的原因可就多了。建议在你出错那段加以点儿mysql报错。这样起码知道为什么出错。很有可能是你的title之类的里面有多余的引号而没有被escape。一般起码会加上addslashes()。
res = mysql_query(insert into loadup (title,up_time) values ($title,$reg_time));如果你数据库连接没问题的话 这么改就可以了。
多半是mysql_query()调用的SQL语句的语法有错误,好好检查一下。
关于php数据库不能编辑和php数据库不能编辑怎么办的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





