php的初步学习

1.php的学习路线

  1. html+css的学习(重点了解form表单)
  2. 理解动态语言概念和基本的php语法
  3. 静动态页面的区别及如何将其连接起来
  4. 接触mysql,开始设计数据库
  5. 了解一些基本的php函数
  6. 完成登陆注册页面

php的学习前准备

环境搭配和安装相应的编译器

(推荐phpstudy和sublime)

了解静动态网页和php的工作原理

静态网页(前端)

在网页设计中,纯粹html格式的网页通常被称为“静态网页”,静态网页是标准的html文件,它的文件扩展名 是.htm,.html,.shtml,.xml,其中可以包括文本,图像,声音,flash动画,javascript客服端脚本等。html代码一 旦生成就基本上不会再发生变化了,除非你修改页面代码。
静态网页流程图

动态网页

动态网页和静态网页是相对而言的,动态网页能与后台数据库进行交互,数据传递。也就是说,网页扩展命 不是常见的.htm,.html,.shtml,.xml等静态网页而是以.aspx,.asp,.jsp,.php,.perl,.cgi等形式为后缀。动态网页创建 后,页面代码虽说没有变,但是显示的内容却可以随着时间,环境或者数据库操作的结果发生变化。(这就 是我们后端需要去做的。)
动态页面原理

php的基本语法和form表单的理解

简单的form表单

	<!DOCTYPE html>
	<meta charset="utf-8">
	<html>
	<head>
		<title></title>
	</head>
	<body>
		<form action="" method="post">
		姓名:<input type="text" name="name"><br>
		性别:<input type="radio" name="sex" value="female">女
					 <input type="radio" name="sex" value="male">男<br>
		爱好:<input type="checkbox" name="hobby[]" value="music">音乐
			 <input type="checkbox" name="hobby[]" value="movie">电影<br>
		城市:<select name="city" >
			<option value="wuhan">武汉</option>
 			<option value="hangzhou">杭州</option>
			</select><br>
	个人简介:<textarea name="jianjie" placeholder="请输入您的个人简介">
					</textarea><br>
		密码:<input type="password" name="pwd" >
    	 <input type="submit" name="submit" value="提交">
    	 <input type="reset" name="reset" value="重置">
	</form>
	</body>
	</html>

php的基本语法

1.基本格式:

<?php 内容; ?>
第一个php文件
<?php 
echo "hello  php";
?>

2.php与html的互相嵌套
php文件可以嵌套在html中
html文件也可以嵌套在php文件中
但需要注意的是:
最终都需要以php文件的形式保存,也就是以.php后缀名的形式结尾。
3.变量
变量以 $ 符号开头,其后是变量的名称
变量名称必须以字母或下划线开头
变量名称不能以数字开头
变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)
变量名称对大小写敏感($y 与 $Y 是两个不同的变量)
4.输出语句
echo ‘输出字符串’;
print_r(‘输出数组’);
5.数据类型
字符串、整数、浮点数、逻辑、数组、对象(暂时不管,面向对象会涉及到)、NULL。

数组
  1. 1.什么是数组
    (1)数组就是一组数据的集合
    (2)其表现形式就是内存中的一段连续的内存地址
    (3)数组名称其实就是连续内存地址的首地址
    数组的特点:(1)连续的
    (2)与其他语言不同的是,PHP中数组的key可以是字符串,而values可以是任意类型。

  2. 2.构造一个数组
    可以用 array() 语言结构来新建一个数组。它接受任意数量用逗号分隔的 键(key) => 值(value)对。

    array( key => value
    , …
    )
    // 键(key)可是是一个整数 integer 或字符串 string
    // 值(value)可以是任意类型的值v

  3. 3.索引数组和关联数组

    索引数组:
    运行结果:
    Array
    (
    [0] => 苹果
    【1】 => 香蕉
    )
    关联数组:
    运行结果:
    Array
    (
    [apple] => 苹果
    [banana] => 香蕉
    )
    区别: 其实关联数组和索引数组的差别只是在键值上,关联数组的键值是字符串,并且是人为的规定;而索引数组是数字

  4. 4.如何读取数组中的元素

见php文件
<?php 
$cars=array("Volvo","BMW","SAAB");
var_dump($cars);
?>
**php文件**

	<?php 
	//1.构造数组
	$hobby = array('1' =>'羽毛球' ,'2'=>'篮球','3'=>'网球');
	//2.读取数组元素
	print_r($hobby);
	echo "<br>";
	$lisi=array('name'=>'lisi','hobby'=>'羽毛球','email'=>'123@qq.com');
	print_r($hobby);
	//2.读取数组元素
	echo "$lisi['name']";

?>

php与html的相互嵌套

php文件

	<!DOCTYPE html>
	<html>
	<head>
		<title></title>
	</head>
	<body>
		<!-- 1.在html中嵌套在html中 -->
		<?php  echo "你好,我是php;" ?>
		<?php 
		// 2.在php里面嵌套html
			echo"<table border='1'>";
			echo"<tr>";
			echo"<td>123</td>";
			echo"</tr>";
			echo "<tr>";
			echo"<td>456</td>";
			echo"</tr>";
			echo"</table>";
		 ?>
	</body>
	</html>

将html与php联系起来

form表单各元素的含义

form表单

  1. action:form表单将传递到test.php,然后由test.php文件处理该表单。
  2. 传递数据的不同方式 post:传递的信息不显示在地址栏中,而显示在消息体中。 get:
    (1)提交时,它的变量和值都会在地址栏显示,这对它的安全性有一定的影响。
    (2)主要用于一个页面向另一个页面传参,比如对页面数据的显示
  3. name属性用于对提交到服务器后的表单数据进行标识 注释:只有设置了name属性的表单才能在提交表单时传递它们的值。
  4. a标签:<a href="test.php?hobby=‘羽毛球’&name=“张三”>点开看看
  5. $ _post:1.$_POST 广泛用于收集提交 method=“post” 的 HTML 表单后的表单数据。
  6. $ _GET
    1.也可用于收集提交 HTML 表单 (method=“get”) 之后的表单数据。
    2.$_GET 也可以收集 URL 中的发送的数据。
form传值中的html文件
<!DOCTYPE html>
	<meta charset="utf-8">
	<html>
	<head>
		<style type="text/css">
				.error{color: red;}
		</style>
		<title></title>
	</head>
	<body>
	<span style="color: red"><a href="test.php?hobby='羽毛球'&name="张三">点开看看</a></span>
	<form action="test.php" method="post">
		<table>
			<tr>
				<td>姓名:</td>
				<td><input type="text" name="name" required><span class='error'>*</span></td>
			</tr>
		<tr>
			<td>性别:</td>
			<td><input type="radio" name="sex" value="female">女
			 <input type="radio" name="sex" value="male">男<span class='error'>*</span></td>
		</tr>
		<tr>
			<td>爱好:</td>
			<td><input type="checkbox" name="hobby[]" value="music">音乐
			 <input type="checkbox" name="hobby[]" value="movie">电影</td>
		</tr>
		<tr>
			<td>城市:</td>
			<td><select name="city" >
			<option value="wuhan">武汉</option>
		 	<option value="hangzhou">杭州</option>
			</select></td>
		</tr>
		<tr>
			<td>个人简介:</td>
			<td><textarea name="jianjie" placeholder="请输入您的个人介绍"></textarea></td>
		</tr>
		<tr>
			<td>密码:</td>
			<td><input type="password" name="pwd" placeholder="请输入密码"  ><span class='error'>*</span></td>
		</tr>
		</table>
		<tr>
			<td> <input type="submit" name="submit" value="提交"></td>
			<td><input type="reset" name="reset" value="重置"></td>
		</tr>
	</form>

	</body>
</html>
form传值中的php文件
	<?php 
		print_r($_POST);
		print_r($_GET);
?>

几种常用的mysql语句

mysql语法

一.数据库的基本操作

  1. 创建数据库 create database 数据库名称;

    显示有哪些数据库 show databases;
    使用数据库 use 数据库名;
    创建表 create table 表名(字段名1 类型 not null ,
    字段名2 类型 not null

    )ENGINE=InnoDB DEFAULT CHARSET=utf8;
    删除表 drop table 表名;
    删除数据库 drop database 数据库名;
    显示有哪些表 show tables;
    增加一个字段 alter table 表名 add column 字段名 属性;
    改变字段属性 alter table 表名modify 字段名 varchar(10);
    改变字段名称 alter table 表名change字段名 varchar(10);注意此时一定要重新指定该字段的类型
    删除一个字段 alter table 表名 DROP COLUMN 字段名 (某些数据库不允许该操作)
    显示表的结构 desc 表名;

  2. 插入一条记录 insert into 表名 values();

    同时插入多条记录 insert into 表名(字段1,字段2…)values(),(),()…;
    查看表中的数据 select *from 表名;
    查看某条记录 select from 表名 where 条件;
    查看指定列 select 字段名 from 表名;
    行计数 select count(
    )from 表名;
    修改某条记录 update 表名 set 字段值= where 条件;
    删除一条记录 delete from 表名 where 条件;

二.其他操作

  • 多表联查,事务机制等等。需要你们自己学习。我给的百度云视频里面也粗略的涉及到了。
  • 数据库的设计在后期项目之中也十分重要。(这个可以百度查找别人数据库设计的例子,也可以查阅相关书籍)

数据库数据表

数据表
数据表
数据库
数据库
熟练mysql的增删改查然后进行建表

建表过程出现的乱码问题

在my.ini 文件中找到default-character-set=utf8改成default-character-set=gbk

如何进入mysql

密码默认为root

mysql命令行

建表

  1. 手动建表
  2. mysql语句建表

php学习

用php进行mysql操作

连接数据库

<?php
		$servername = "localhost";//服务器的名称或者ip地址
	$username = "root";//用户名
	$password = "root";//用户密码
	// 创建连接
	$conn = mysqli_connect($servername, $username, $password);
	// 检测连接
	if (!$conn) {
	    die("Connection failed: " . mysqli_connect_error());
	}
	echo "连接成功";
	mysqli_set_charset($conn,'utf8');//设置字符集为utf8
?>

建库建表

建库

	<?php
	include('link.php');
	// 创建数据库
	$sql = "CREATE DATABASE myDB";
	if (mysqli_query($conn, $sql)) {
	    echo "数据库创建成功";
	} else {
	    echo "Error creating database: " . mysqli_error($conn);
	}
	mysqli_close($conn);
?>

建表

	<?php 
	include("link.php");
	mysqli_select_db($conn,'myDB');//数据库的选择
	$sql="create table study(
	     id int(10) not null primary key auto_increment,
	     name  varchar(20)  not null,
	     sex  char(4) not null,
	     hobby  varchar(50) not null,
	     city   varchar(20) not null,
	     jianjie   text(100) not null,
	     pad   varchar(50)  not null)engine=innodb default charset=utf8;";
	if (mysqli_query($conn, $sql)) {
	    echo "数据表 MyGuests 创建成功";
	} else {
	    echo "创建数据表错误: " . mysqli_error($conn);
	} 
	mysqli_close($conn);//关闭数据库
?>

向表中插入数据

php文件直接插入数据
	<?php 
	include("link.php");
	mysqli_select_db($conn,'myDB');
	$sql="insert into study (name,sex,hobby,city,jianjie,pad) values('张三','男','羽毛球','武汉','你好','253813')";
	if (mysqli_query($conn, $sql)) {
	    echo "新记录插入成功";
	} else {
	    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
	}
	mysqli_close($conn);

?>
form表单传值,php文件直接插入数据

html文件

<!DOCTYPE html>
	<meta charset="utf-8">
	<html>
	<head>
		<title></title>
	</head>
	<body>
	<form action="form.php" method="post">
		姓名:<input type="text" name="name"><br>
		性别:<input type="radio" name="sex" value="female">女
			 <input type="radio" name="sex" value="male">男<br>
		爱好:<input type="checkbox" name="hobby[]" value="music">音乐
			 <input type="checkbox" name="hobby[]" value="movie">电影<br>
		城市:<select name="city" >
			<option value="wuhan">武汉</option>
		 	<option value="hangzhou">杭州</option>
			</select><br>
		个人简介:<textarea name="jianjie" placeholder="请输入您的个人简介">

				</textarea><br>
		密码:<input type="password" name="pwd" >
		     <input type="submit" name="submit" value="提交">
		     <input type="reset" name="reset" value="重置">		
	</form>
	</body>
</html>

php文件

<?php 
	print_r($_POST);
	echo "<br>";
	echo $_POST['name'];
	echo "<br>";
	print_r($_POST['hobby']);
	echo "<br>";
	print_r($_POST['hobby'][0]);
 ?>

php文件

	<?php 
		include("link.php");
		mysqli_select_db($conn,'myDB');
		$hobby=$_POST['hobby'][0];
		$name=$_POST['name'];
		$sex=$_POST['sex'];
		$city=$_POST['city'];
		$jianjie=$_POST['jianjie'];
		$pwd=$_POST['pwd'];
		$sql="insert into study (name,sex,hobby,city,jianjie,pad) values('$name','$sex','$hobby','$city','$jianjie','$pwd')";
		// var_dump($sql);
		if (mysqli_query($conn, $sql)) {
		    echo "新记录插入成功";
		} else {
		    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
		}
		mysqli_close($conn);
	?>

如何查看表中数据

	<?php 
	include('link.php');
	mysqli_select_db($conn,'myDB');
	$sql="select*from study";
	$a=mysqli_query($conn,$sql);
	if ($a) {
		while ($rs = mysqli_fetch_assoc($a)) {
			var_dump($rs);
		}
	}else{
		echo "Error: " . $sql . "<br>" . mysqli_error($conn);
	}

	mysqli_close($conn);
	 ?>

如何修改表中数据

如何删除表中数据

完成登陆注册页面

待续。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值