php mysql uodate语句执行成功,但是无法更新数据库中的数据。

php mysql uodate语句执行成功,但是无法更新数据库中的数据。,第1张

id字段类型是什么?假如是数字类型,试修改如下:

<?php

 if ( empty( $name_x ) ) {

    $i++

    $j++

    $Sql = 'update `man_info` set `name` = \'' . $name_x . '\' where `id` = ' .$id

    $Msg = mysql_query( $Sql ) ? 'success' : '姓名修改失败,错误信息是:' .mysql_error()

   $Msg == 'success' or $i--    

   echo '<script>alert("' . $Msg . '")</script>'

}

类页面

<?php

include_once (dirname(__FILE__)."\ConnDB.php")

class SqlHelper{

private $_arr

public $tableName

public function dataBind($key,$value)

{

$this->_arr[$key]=$value

}

public function validate()

{

if(!isset($this->tableName))

{

die("表名不能为空!")

}

if(!isset($this->_arr))

{

die("值与列名未绑定")

}

}

public function update($condition){

foreach($this->_arr as $key =>$value){

$s .= "$key = $value,"

}

$ss = substr($s,0,-1)

$sql = "update $this->tableName set $ss where $condition"

$query = mysql_query($sql)

echo $sql

if($query)

{

echo "数据修改成功"

}

else

{

echo "数据修改失败"

}

}

public function insert()

{

$this->validate()

$keys = ""

$values = ""

foreach($this->_arr as $key=>$value)

{

$keys.="`$key`,"

if($value=="")

{

$values.="null,"

}

else

{

$values.="'$value',"

}

}

$keys = substr($keys,0,strlen($keys)-1)

$values = substr($values,0,strlen($values)-1)

$sql = "insert into `$this->tableName`($keys)values($values)"

$query = mysql_query($sql)

if($query)

{

echo "ok"

}

else

{

echo "no"

}

//echo mysql_error()

//return $query

}

public function Delete($condition)

{

if(!isset($this->tableName))

{

die("表名不能为空!")

}

$sql="delete from $this->tableName where $condition"

$query=mysql_query($sql)

if($query)

{

echo "删除成功!"

}

else

{

echo mysql_error()

}

}

function select($sqls)//读取出符合where子句的所有信息

{

$sql = "select * from `$this->tableName` where $sqls"

$query = mysql_query($sql)

/*

$result = array()

while($rs = mysql_fetch_array($query))

{

$result[]=$rs

}

return $result*/

$num = mysql_num_rows($query)

return $num

}

function selectNew($sqls,$n)//读取出符合where子句的最新的n条信息

{

$sql = "select * from `$this->tableName`

where $sqls

order by `id` desc

limit 0,$n"

$query = mysql_query($sql)

$result = array()

while($rs = mysql_fetch_array($query))

{

$result[]=$rs

}

return $result

}

}

?>

实例化页面

$inserts = new SqlHelper()

$inserts->tableName="user"

$inserts->dataBind("name","bbbb")

$inserts->dataBind("address","")

$inserts->insert()

$inserts = new SqlHelper()

$inserts->tableName="user"

$inserts->dataBind("name","33333")

$inserts->dataBind("address","44444")

$inserts->update("id = 13")

$inserts=new SqlHelper()

$inserts->tableName="user"

$inserts->Delete("id=4")

这是我以前写的类,你看看!

<?php

//连接数据库

$link = mysql_connect('localhost', 'root', '123456')

//判断连接是否成功

if (!$link)

{

die('Could not connect: ' . mysql_error())

}

//选择数据库

mysql_select_db("xitong")

$zhuti=($_POST['zhuti'])

$neirong=($_POST['neirong'])

$id=($_POST['id'])

//判断姓名是否为空

$shenhe="update zhuti set zhuti='$zhuti',neirong='$neirong' where id='$id'"

mysql_query($shenhe)

{

//定义查询语句

# $result = mysql_query('select zhuti,zuozhe,zhengwen,postDate from aa order by postDate desc')

//判断查询是否成功

echo "<script language=\"JavaScript\">\r\n"

echo " alert(\"修改成功!\")\r\n"

echo " location.replace(\"bjxw.php\")\r\n"// 自己修改网址

echo "</script>"

exit

}

?>

你试试我这个样式的,先转换一下$zhuti=($_POST['zhuti'])

$neirong=($_POST['neirong'])

然后

$shenhe="update zhuti set zhuti='$zhuti',neirong='$neirong' where id='$id'"

mysql_query($shenhe)

试试吧,不行百度HI我!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6153890.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存