php调用数据库字段

php调用数据库字段,第1张

我说一下几个步骤:

1、首先你得有一个存储这些数据的数据库表,比如数据库表的结构是这样的。

数据库表名为:user

字段:编号(id),姓名(name),手机(mobile),产品名称(productName) 主键为id

2、实现你需要的功能:

第一步:你需要连接数据库,有一个连接数据库的文件:conn.php。内容如下:

// 我假设你的数据库是mysql的,假设你的数据库用户名为root,密码为123456,根据你数据库的实际情况改写成你的。数据库名称假设为db_889888658

<?php

$conn=mysql_connect("localhost","root","123456") or die("数据库连接失败,请检查用户名或密码")

mysql_select_db("db_889888658",$conn)

mysql_query("SET NAMES 'gb2312'")

?>

第二步:你需要一个添加数据的表单,就相当于一个注册或添加数据的页面。如文件为:add.html内容如下:

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

<input type="text" name="name"><br/>

<input type="text" name="mobile"><br/>

<input type="text" name="productName"></br>

<input type="submit" name="submit" value="添加数据">

</form>

第三步:写一个处理你表单提交的数据的文件reg.php。内容如下:

<?php

include "conn.php"

if(isset($_POST["submit"])){

$name=$_POST["name"]

$mobile=$_POST["mobile"]

$productName=$_POST["productName"]

$sql="INSERT INTO 'user'(id,name,mobile,productName) VALUES (NULL,$name,$mobile,$productName)"

$query=mysql_query($sql)

$num=mysql_affected_rows($conn)

if($num>=1){

echo "<script>alert('数据添加成功')location.href='add.html'</script>"

}else{

echo "<script>alert('数据添加失败')history.back()</script>"

}

}

?>

第四步,第三步已经实现你说的第一个功能。下面说一下你的第二个功能。写一个表单,输入你要查询的手机号,点击“查询”按钮查询你想要的字段。

<?php

if($_POST["submit"]){

$mobile=$_POST["mobile"]

if(!empty($mobile)){

include "conn.php"

$sql="SELECT * FROM 'user' WHERE 'mobile'='$mobile'"

$query=mysql_query($sql)

while($rs=mysql_fetch_array($query)){

$str="查询结果:<br/>"

$str.="用户名:".$rs["name"]." "

$str.="产品名:".$rs["name"]." "

}

echo "您查询的手机号为".$mobile."的数据信息如下:<br/>"

echo $str

}else{

echo "请输入手机号"

}

}

?>

<form action="" method="post">

请输入您要查询的手机号:<input type="text" name="mobile"><input type="submit" name="submit" value="查询">

</form>

打开phpstorm,打开Database窗口,如下图:

配置mysql连接,如下图:

填写mysql地址,用户名,密码,如果没有安装驱动,要先安装驱动

测试数据库能否连接成功:

保存配置,保存时,会提示设置密码:

读取数据库表,及根据条件查询修改:

$a=a:1:{s:4:"type"s:1:"2"}

$b=unserialize($a)

print_r($b)

序列化serialize()与反序列化unserialize():

序列化serialize():就是将一个变量所代表的

“内存数据”转换为“字符串”的形式,并持久保存在硬盘(写入文件中保存)上的一种做法,即,把“内存数据”转换为“字符串”然后保存到文件中;

反序列化unserialize():就是将序列化之后保存在硬盘(文件)上的“字符串数据”恢复为其原来的内存形式的变量数据的一种做法,即,把文件中保存的序列化后的“字符串数据”恢复为“内存数据”;

对象的序列化:1.对一个对象进行序列化,只能将其属性数据“保存起来”,而方法被忽略(方法不是数据),但是类名也能被保存起来,因此反序列化的位置只要有该类文件,就仍然可以将对象还原,即该对象的属性和方法依然可以使用;

2.对象序列化的时候,会自动调用该对象所属类的__sleep()魔术方法;

对象的反序列化:1.对一个对象进行反序列化,其实是恢复原来保存起来的属性数据,而且,此时必须需要依赖该对象原来的所属类;

2.对象反序列化的时候,会自动调用该对象所属类的__wakeup()魔术方法;

总结:一般当我们需要将数据保存到文件中时会用到序列化,保存到数据库中一般不这样用,因为序列化和反序列化的过程其实很耗时


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

原文地址: http://outofmemory.cn/sjk/10703481.html

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

发表评论

登录后才能评论

评论列表(0条)

保存