php连接MySQL


先说一下我踩了三天的坑
我在这之前用mysql申请了一个数据库,然后用php连接一直连接不上,试了许多办法,都不行
下载MySQL时显示3306端口被占用,所以选了3307

在这里插入图片描述
在这里插入图片描述

一直报错,三天后,终于知道了,你用的数据库必须能和php建立连接,如果你用phpstudy的话,phpstudy有内置的,直接打开用就行;

先说正确的

php连接数据库
用到了
mysqli_connect("$host","$user","$pass","t2","3306");函数,里面参数分别是地址,用户名,密码,选择的数据表,端口号(默认3306,估计3306端口就是被phpstudy占用的)
注意:php高级版本中,弃用了mysql相关函数

<?php
header("Content-type:text/html;charset=utf-8");

$host = '127.0.0.1';
$user = 'root';
$pass = 'root';
$port=3306;

$link=@mysqli_connect("$host","$user","$pass","t2","3306");
@mysqli_set_charset($link,"utf8");
if(!$link)
{
    echo '数据库连接失败:';
}
else
{
    echo "链接成功";
}


?>

新建数据表
sql中,数据表新建用CREAT TABLE[IF NOT EXISTS] db_name (column_name data_type,..........);
php中,用mysql_query()函数运行

//新建表,table——name为:MyGuests,
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";
if(mysqli_query($link,$sql))
{
    echo "创建数据表错误!";
}
else{
    echo "创建成功";
}

插入记录
mysqli_select_db($link,'db_name')选择数据表
插入数据的语句:INSERT [INTO] db_name[(col_name........)] VALUE(val..............);

mysqli_select_db($link,'study');
$name="aaaaa";
$id=170650;
$sex="boy";
$sq = "insert into study(id,name,sex) VALUE ('$id','$name','$sex')";
if (mysqli_query($link,$sq))
{
echo"success!";
}

查找记录
查找记录命令:select * from db_name;

引用慕课网:

PHP有多个函数可以获取数据集中的一行数据,最常用的是mysql_fetch_array,可以通过设定参数来更改行数据的下标,默认的会包含数字索引的下标以及字段名的关联索引下标。

$sql = "select * from user limit 1";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);

可以通过设定参数MYSQL_NUM只获取数字索引数组,等同于mysql_fetch_row函数,如果设定参数为MYSQL_ASSOC则只获取关联索引数组,等同于mysql_fetch_assoc函数。

$row = mysql_fetch_row($result);
$row = mysql_fetch_array($result, MYSQL_NUM);

//这两个方法获取的数据是一样的

$row = mysql_fetch_assoc($result);
$row = mysql_fetch_array($result, MYSQL_ASSOC);

如果要获取数据集中的所有数据,我们通过循环来遍历整个结果集。

$data = array();
while ($row = mysql_fetch_array($result)) {
    $data[] = $row;
}
$find="select * from study;";
$result=mysqli_query($link,$find);
$row=mysqli_fetch_array($result);
print_r($row);
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Junebao

如果你碰巧财力雄厚的话...

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值