关于php添加语句

关于php添加语句,第1张

那只能先执行insert插入,执行插入后系统会返回一个产生的自递增id值,对这个值md5加密后,再update

不可能在插入前得到这个id值的(先select最大id在低并发的情况下也行,高并发的话终究不够严谨)

把来自表单的数据插入数据库

现在,我们创建一个 HTML 表单,这个表单可把新记录插入 "Persons" 表。

这是这个 HTML 表单:

1

2

3

4

5

6

7

8

9

10

11

12

<html>

<body>

<form action="insert.php" method="post">

Firstname: <input type="text" name="firstname" />

Lastname: <input type="text" name="lastname" />

Age: <input type="text" name="age" />

<input type="submit" />

</form>

</body>

</html>

当用户点击上例中 HTML 表单中的提交按钮时,表单数据被发送到 "insert.php"。"insert.php" 文件连接数据库,并通过 $_POST 变量从表单取回值。然后,mysql_query() 函数执行 INSERT INTO 语句,一条新的记录会添加到数据库表中。

下面是 "insert.php" 页面的代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<?php

$con = mysql_connect("localhost","peter","abc123")

if (!$con)

{

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

}

mysql_select_db("my_db", $con)

$sql="INSERT INTO Persons (FirstName, LastName, Age)

VALUES

('$_POST[firstname]','$_POST[lastname]','$_POST[age]')"

if (!mysql_query($sql,$con))

{

die('Error: ' . mysql_error())

}

echo "1 record added"

mysql_close($con)

?>

1.我们应该在每一个mysql_query之后检测是否成功,不成功要输出错误原因,这样才便于分析,例如你可以这么写代码:

$out=''//总的结果

$sql="insert into users values (null, '$userid', '$pwd1')"

if (!mysql_query($sql)) $out.="插入用户表失败,SQL:$sql<br>错误:".mysql_error()

$s_sql="select * ...."//真心不明白你这个的意思

$sql="insert into user_role values (null, $role_id, '$s_sql')"

if (!mysql_query($sql)) $out.="插入xx表失败,SQL:$sql<br>错误:".mysql_error()

if ($out=='') echo '<script>alert("添加成功")</script>'

else echo "<script>alert('$out')location.href='login.php'</script>"

2.看你的代码,好像$role_id没有赋值,这可能是导致失败的原因,希望你用上面的方法调试观察。


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

原文地址: http://outofmemory.cn/bake/11953131.html

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

发表评论

登录后才能评论

评论列表(0条)

保存