php修改数据库总结,php数据库修改语句

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修改数据库的问题!

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

@$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数据库内容修改代码

修改如下:不用使用session传递

1.php 文件中: 修改后的代码,将$row["id"]作为id的参数值传递到2.php

else{

echo 'td'.'a href="2.php?id='.$row["id"].'"'.$row["id"].可以修改.'/a/td';

}

2.php修改如下:

$strSql="SELECT * from test where id=".$_GET['id'];

如何用php修改数据库中的数据

举例如下:

创建userinfo_update.php页面用于查询用户信息,先显示信息,在修改:

先通过GET获取用户编号查询用户信息:

$sql = "select * from user_info where user_id='".$_GET['userId']."'";

$result = mysql_query($sql,$con);

if($row = mysql_fetch_array($result)){

}

页面效果:

创建update.php文件,用于修改用户信息:

使用到了mysql_affected_rows() 函数返回前一次 MySQL 操作所影响的记录行数。

//通过post获取页面提交数据信息

$userId = $_POST[userId];

$userName = $_POST[userName];

$userAge = $_POST[userAge];

$sql = "update user_info set user_name='".$userName."',user_age=".$userAge." where user_id='".$userId."'";

mysql_query($sql,$conn);//执行SQL

$mark  = mysql_affected_rows();//返回影响行数

$url = "userinf_select.php";

运行结果

创建delete.php文件,完成删除用户信息功能:

$userId = $_GET['userId'];

include 'connection.php';

$sql = "delete from user_info where user_id='".$userId."'";

mysql_query($sql,$con);

$mark  = mysql_affected_rows();//返回影响行数

if($mark0){

echo "删除成功";

}else{

echo  "删除失败";

}

mysql_close($con);

运行结果:

config.php 数据库配置如何修改

$db_host = 'mysql'; /* 数据库类型 */

$db_name = 'ceshi'; /* 数据库名称 */

$db_username = 'ceshi'; /* 用户名 */

$db_password = '123456'; /* 密码 */

$db_prefix = 'ppdm_'; /* 表前缀 */


分享题目:php修改数据库总结,php数据库修改语句
本文链接:http://ybzwz.com/article/heddis.html