PHP 更新数据,谁帮我看看这个是有什么错啊,不是SQL语句的错误
页面执行部分<?phpinclude("Conn.php");?><?$portalsf=$_POST["portalsf"];$caseId=$_POST["caseI...
页面执行部分
<?php
include("Conn.php");
?>
<?
$portalsf=$_POST["portalsf"];
$caseId=$_POST["caseId"];
$criti= $_POST["Criticality"];
$actionType= $_POST["ActionType"];
$creator=$_POST["creator"];
$sql="update cases set Criticality='$criti',ActionType='$actionType' where Id='$caseId'";
mysql_query($sql);
echo $sql;
if(mysql_query($sql)){
// header("refresh:0;url=Case.php?id='$portalsf'");//跳转页面,注意路径
echo "<script language=javascript>alert('保存成功');</script>";
}else {
echo "<script language=javascript>alert('保存失败');</script>";
}
?>
连接数据库部分
<?php
$mysql_servername = "127.0.0.1";
$mysql_username = "root";
$mysql_password ="mysql";
$mysql_database ="newname";
$conn = mysql_connect($mysql_servername , $mysql_username , $mysql_password) or die("数据库连接错误".my_sqlerror());
mysql_select_db($mysql_database,$conn) or die("数据库连接错误".my_sqlerror());
mysql_query("set character set utf8");
mysql_query("set names utf8");
?>
这个是打印出来的SQL语句,是不存在问题的,另外,可以执行插入语句,但就是不能执行更新和删除
update cases set Criticality='高',ActionType='需求分析' where Id='1'
这条SQL语句放到Mysql中是可以执行的,所以说这条Sql语句不存在问题,但为什么mysql_query执行会返回false呢? 展开
<?php
include("Conn.php");
?>
<?
$portalsf=$_POST["portalsf"];
$caseId=$_POST["caseId"];
$criti= $_POST["Criticality"];
$actionType= $_POST["ActionType"];
$creator=$_POST["creator"];
$sql="update cases set Criticality='$criti',ActionType='$actionType' where Id='$caseId'";
mysql_query($sql);
echo $sql;
if(mysql_query($sql)){
// header("refresh:0;url=Case.php?id='$portalsf'");//跳转页面,注意路径
echo "<script language=javascript>alert('保存成功');</script>";
}else {
echo "<script language=javascript>alert('保存失败');</script>";
}
?>
连接数据库部分
<?php
$mysql_servername = "127.0.0.1";
$mysql_username = "root";
$mysql_password ="mysql";
$mysql_database ="newname";
$conn = mysql_connect($mysql_servername , $mysql_username , $mysql_password) or die("数据库连接错误".my_sqlerror());
mysql_select_db($mysql_database,$conn) or die("数据库连接错误".my_sqlerror());
mysql_query("set character set utf8");
mysql_query("set names utf8");
?>
这个是打印出来的SQL语句,是不存在问题的,另外,可以执行插入语句,但就是不能执行更新和删除
update cases set Criticality='高',ActionType='需求分析' where Id='1'
这条SQL语句放到Mysql中是可以执行的,所以说这条Sql语句不存在问题,但为什么mysql_query执行会返回false呢? 展开
6个回答
展开全部
楼主您好,
首先,Conn.php中连接没问题,
而你又说竖sql语句没问题,
不知道你为什么这么肯定
你还是有必要去输出一下的
看是否正常的接收了数据
如果这些都没问题的话
那我猜就是数据库里写的时候的编码问题
把数据库编码改成一致的
希望对您有帮助
首先,Conn.php中连接没问题,
而你又说竖sql语句没问题,
不知道你为什么这么肯定
你还是有必要去输出一下的
看是否正常的接收了数据
如果这些都没问题的话
那我猜就是数据库里写的时候的编码问题
把数据库编码改成一致的
希望对您有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这里
$sql="update cases set Criticality='$criti',ActionType='$actionType' where Id='$caseId'";
改为
$sql="update cases set Criticality=“.$criti.”,ActionType=“.$actionType.” where Id=“.$caseId;
$sql="update cases set Criticality='$criti',ActionType='$actionType' where Id='$caseId'";
改为
$sql="update cases set Criticality=“.$criti.”,ActionType=“.$actionType.” where Id=“.$caseId;
更多追问追答
追问
的确提示了保存成功,但数据库里面并没有更新字段啊!这个是怎么回事
追答
echo 你的 $sql看看是啥字符串。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在 $sql="update cases set Criticality='$criti',ActionType='$actionType' where Id='$caseId'";之后加一句:echo $sql;die;查看输出语句是否是你想执行的数据,并且认真看一下你的这两个字段名是否与你表中的字段名一致。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建议获得$sql到数据库执行一次看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update 语句在mysql_query后,只要语法正确,就会返回true。但是具体语义正确与否,是不能检查的,请把SQL语句打印出来,看输出的SQL是否真正是您想要执行的结果,同时,把这个SQL可以直接放进客户端或者命令行中执行,看有没有报错。
希望对你有帮助
希望对你有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询