php修改数据库会增加,php修改数据库会增加内存吗

thinkphp在数据库中增加和修改失败

你是要将查询出的数据中为空的字段补充信息,这样可能有好几个空字段,所以理想的方法是先找出需要更新的字段,最后再一次性更新。

为企业提供成都做网站、成都网站设计、网站优化、网络营销推广、竞价托管、品牌运营等营销获客服务。成都创新互联公司拥有网络营销运营团队,以丰富的互联网营销经验助力企业精准获客,真正落地解决中小企业营销获客难题,做到“让获客更简单”。自创立至今,成功用技术实力解决了企业“网站建设、网络品牌塑造、网络营销”三大难题,同时降低了营销成本,提高了有效客户转化率,获得了众多企业客户的高度认可!

foreach($arr[0] as $k = $val){ $data['id'] = $arr[0]['id']; if($val == null) $data[$k] = '写入这句'; $m-save($data); }

关于PHP修改数据库的问题!

我一般是先用几个变量接收传递来的值,再写入到数据库中的。如:

@$s1 = $_GET['id'] ;//@用来消除警告

$a = "select * from cus where id = '$s1'";//假设id类型为varchar ,更新语句也写成类似的,

$a1=mysql_query($a) or die("br表cus不存在此记录!".mysql_error());

//还有你的传递方式是什么?post还是get?怎么这里你都写了?或者你双引号里的连接符点是不是要写到双引号外面

php数据库添加、删除、修改数据(mysql)

一、PHP操作MySql数据库

新增数据

?php

$query

=

"INSERT

INTO

grade

(name,email,point,regdate)

VALUE

('

李三','yc60.com@gmail.com',,NOW())"

;

@mysql_query($query)

or

die(

'添加数据出错:'

.mysql_error());

?

修改数据

?php

$query

=

"UPDATE

grade

SET

name='小可爱'

WHERE

id=6"

;

@mysql_query($query)

or

die(

'修改出错:'

.mysql_error());

?

删除数据

?php

$query

=

"DELETE

FROM

grade

WHERE

id=6";

@mysql_query($query)

or

die(

'删除错误:'

.mysql_error());

?

显示数据

?php

$query

=

"SELECT

id,name,email,point

FROM

grade";

$result

=

@mysql_query($query)

or

die(

'查询语句出错:'

.mysql_error());

while

(!!

$row

=

mysql_fetch_array($result))

{

echo

$row[

'id'

].

'----'

.$row['name'

].'----'

.$row

['email'

].

'----'

.$row['point'

];

echo

'br

/

';

}

?

二、其他常用函数

mysql_f

etch_row()

:从结果集中取得一行作为枚举数组

mysql_f

etch_assoc()

从结果集中取得一行作为关联数组

mysql_f

etch_array()

从结果集中取得一行作为关联数组,或数字数组,或二者兼有

mysql_f

etch_lengths

()

取得结果集中每个输出的长度

mysql_f

ield_name():

取得结果中指定字段的字段名

mysql_num_rows():

取得结果集中行的数目

mysql_num_f

ields():取得结果集中字段的数目

mysql_get_client_inf

o()

取得

MySQL

客户端信息

mysql_get_host_info():

取得

MySQL

主机信息

mysql_get_proto_info():

取得

MySQL

协议信息

mysql_get_server_inf

o()

取得

MySQL

服务器信息

PHP 连接数据库对原数据值进行增加,比如本来只有1,我如要增加100变成101

没明白你的意思

你说的是 表里的 行呢

还是 行 里面的 值呢

表里面的行,直接insert 一条就可以

行里的值用 update tablename set x = 101 where 别的条件 limit 1;

这个x是你要修改的字段,101是修改后的值,x以前是=1的,limit 1是只修改一条的意思。

PHP修改数据库问题

你的错误主要在这里

$sql="UPDATE symbols SET country = '$_POST[country]',animal = '$_POST[animal]',cname='$_POST[cname_]' WHERE symbols.id=$_POST[id]";

当存在中文字符时,中文字符用''包围,而英文字符不用,否则会出错的。

像这种symbols.id,句号.只是用于表示指向的,如果是你在单个表中可以把表名省去,就用id就行,只有在多表查询中才需要指明某个字段属于哪个表单。

还有你下面的 $result=$mysqli-query(sql);sql前面应该加一个$。

下面是我改的代码,经过测试可以方便使用:

有个比较怪异的地方是,$_POST[cname_],它在POST表单中自动添加为cname_,这个是var_dump($_POST)测试的得到的结果,var_dump函数用于查看变量类型以及变量值的。还有后面把表单处改为

echo "form method='POST' action='{$_SERVER['PHP_SELF']}'";

actio指向自身,而且将其放在输出循环中,字符集也改为了UTF8,header头先输出声明,否则在IE以为的浏览器中会出现乱码

?php

header("Content-type: text/html;charset=UTF-8");

$host = "localhost";

$user = "root";

$pass = "";

$db = "phpdev";

$mysqli = new mysqli($host, $user, $pass, $db);

if (mysqli_connect_errno()) {

die("Unable to connect!");

}

$mysqli-query("SET NAMES 'utf8'");

if (isset($_POST['bthModify'])) {

$sql="UPDATE {$db}.symbols SET country = '$_POST[country]',animal = '$_POST[animal]',cname='$_POST[cname_]' WHERE symbols.id=$_POST[id]";

$result=$mysqli-query($sql);

// var_dump($sql);

if ($result) {

echo "修改成功";

}else {

echo "修改失败";

}

}

$query = "SELECT * FROM symbols";

if ($result = $mysqli-query($query)) {

if ($result-num_rows 0) {

echo "table cellpadding=10 border=1";

while($row = $result-fetch_array()) {

echo "form method='POST' action='{$_SERVER['PHP_SELF']}'";

echo "tr";

echo "tdinput name='id' type='text' id='id' value='$row[0]' //td";

echo "tdinput name='country' type='text' id='country' value='$row[1]' //td";

echo "tdinput name='animal' type='text' id='animal' value='$row[2]' //td";

echo "tdinput name='cname ' type='text' id='cname' value='$row[3]' //td";

echo "tdinput name='bthModify' type='submit' id='bthModify' value='修改' //td";

echo "/tr";

echo "/form";

}

echo "/table";

}

$result-close();

}

?


网页名称:php修改数据库会增加,php修改数据库会增加内存吗
本文链接:http://azwzsj.com/article/dscghjc.html