PHP研究记录:01-基础

PHP BASIC LEARNING (本地PHP版本:7.4.2)

备注 示例 参考 标记 图记

运行环境:
PHPSTUDY作为本地运行,wampserver也可。
另外,使用editplus,ue等做脚本等编写。
测试浏览器:火狐73.0 x64

DAY1 PHP是什么?

1.WHAT IS PHP?
–PHP是一种运行在服务端的脚本语言,可以嵌入到HTML之中。
2.代码标记
–作为ASP短标记:<%php代码 %>
–普通短标记则是:<?ph?>

备注:这两种已经弃用,如需使用,需要去配置文件中开启
(php目录\php.ini\),之后找到“short_open_tag”,并且按照教程操作

–脚本标记:<script language=”php”>PHP代码</script>(php7后无效)
–标准标记(常用):<?php php代码?>

 

e.g(创建一个index.php文件,并且这么写,毕竟运行的环境不可使用上面的“脚本标记”。)
示例:
<html>

<body>
<b>
<?php
echo ‘hello world’;
//脚本标记
?>
</b>
</body>
</html>

参考1:正常情况

3. 注释怎么写?
A.习惯:这是非常重要的,尤其在初学阶段,可以帮忙理清思路,作为说明。(当然写的时候)
B.分类:行注释、块注释。
–行注释:一次一行(注释)
e.g
//后面的内容全是注释
#:同“//”
–块注释:一次多行
e.g
/*:直到*/出现之前,全部都是注释
*/

示例:
<?php

//在脚本开始前:对于脚本功能进行简单阐述
#注释的内容会在PHP解析过程中被忽略

//块注释
/*
* @功能说明:注释
* @作者:<作者名称>
* @版本:0.01
*/

 

echo ‘hello world’

?>

参考2-注释分类

 

—–示例结束—–

4.PHP语句分隔符
–语句分隔符:在PHP中,代码是以行为单位,系统需要通过判断行的结束,该结束通常都是一个符号,分号“;”(英文状态下的)
–定义内容:(e.g)
$a=5;
Echo ‘hello world’;

3-1 正常情况

 

3.2 第一行代码结尾没分号的时候

 

3-3 最后一行代码结尾没分号时的情况

 

备注:
1.PHP中标记符?>有自带语句结束符的效果,最后一行PHP代码可以没有语句结束符“;”
(不推荐)
2.PHP中其实很多代码的书写并不是嵌入到HTML中,而是单独存在,通常书写习惯中就不建议使用标记结束符?>,PHP会自动从开始到最后全部认为是PHP代码,从而解析。
(火狐在代码修改后报错,Parse error: syntax error, unexpected end of file, expecting ‘,’ or ‘;’ in D:\phpstudy_pro\WWW\end.php on line 8)

以上。晚安。

 

跟着学习PHP相关东西的day2:查询,增删数据、记录(part2)

PART2

这段,可以说,在点击按钮后,会出现与其对应的图片,文字等等。

E.G.

⬆第一个页面

——————————————————————————

⬇点击对应按钮后的结果

 

具体使用的代码:(index.php)

<form>
<button type=”submit” formaction=”kasumi.html”>小霞</button>

//点击按钮跳转到对应页面,其他相同

submit:提交表单,请求

 

<button type=”submit” formaction=”setsuna.html”>雪菜</button>
<button type=”submit” formaction=”shizuku.html”>小雫</button>
<button type=”submit” formaction=”kanada.html”>彼方</button>
</form>

 

跳转后的页面代码(E.G)

<head>
<meta charset=”utf-8″ />
</head>
<image src=”kasumi.png” />
<label>诶嘿~感谢你的投票!小霞霞真是太开心了!</label>

 

 

原理

点击按钮后,执行如下操作:

HTML <button> formaction,从而导航到指定的页面。

https://www.runoob.com/tags/att-button-formaction.html

 

注意:————————————————————————————————-

Internet Explorer 10, Firefox, Opera, Chrome, 和 Safari 支持 formaction 属性。

注意: Internet Explorer 9 及更早IE版本不支持 formaction 属性。


定义和用法

formaction 属性覆盖 form 元素的 action 属性。

该属性与 type=”submit” 配合使用。


HTML 4.01 与 HTML5之间的差异

formaction 属性是 HTML 5 中的新属性。

 

——————————-相关指令:————————————————————–

URL 规定将表单数据发送到的地址。可能值:

  • 绝对 URL – 完整的页面URL地址(如:href=”http://www.example.com/formresult.html”)
  • 相对 URL 地址 -指向当前网站的一个文件(如:href=”formresult.html”)

 

 

——————————————————————————————另一个示例:

(示例代码来自:https://www.w3school.com.cn/html5/att_button_formaction.asp)

<!DOCTYPE HTML>
<html>
<body>

<form action=”/example/html5/demo_form.asp” method=”get”>
First name: <input type=”text” name=”fname” /><br />
Last name: <input type=”text” name=”lname” /><br />
<button type=”submit”>提交</button><br />
<button type=”submit” formaction=”/example/html5/demo_admin.asp”>以管理员身份提交</button>
</form>

</body>
</html>

输入fname=guo,lname=hao后,返回

服务器接收到的用户输入为:

fname=guo&lname=hao。

 

PART2结束。欢迎指正。

跟着学习PHP相关东西的day2:查询,增删数据、记录

DAY2/建站计划日3

这是第一部分。

 

一组简单的查询、增删数据记录语句

需要先设置好一个本地数据库,数据库名,及用户名均为video,数据库密码是nijigaku。否则会显示权限问题。

A:INDEX.PHP 部分代码

 

<?php
$host=’127.0.0.1′;
$user=’video’;
$password=’nijigaku’;
$dbName=’video’;
$conn = new mysqli($host, $user, $password,$dbName);

if ($conn->connect_error) {
die(“连接失败: ” . $conn->connect_error);
}
echo ‘连接成功<br />’;

$sql=”CREATE TABLE IF NOT EXISTS avnum( “.
“avnum varchar(10) not null,”.
“vdname varchar(100),”.
“PRIMARY KEY ( avnum ))ENGINE=InnoDB DEFAULT CHARSET=utf8;”;
$scd=$conn->query($sql);

if ($scd){
echo ‘创建成功<br />’;
}
?>

<form action=”submit.php” method=”post”>
<label>AV号</label><input name=”avnum” />
<label>视频名</label><input name=”vdname” />
<button type=”submit”>提交</button>
</form>

<?php
if (!empty($_POST[‘avnum’])){
$num=$_POST[‘avnum’];
$name;
if (!empty($_POST[‘vdname’])){
$name=$_POST[‘vdname’];
}
$sql=”select count(*) from avnum where avnum=”.$num.”;”;
$ext=$conn->query($sql);

$i=0;
$results = array();
foreach($ext as $row){
$results[$i] = $row;
$i++;
}

if ($results[0][‘count(*)’]!=0) { echo ‘av号已经存在!<br />’;}
else {
$sql=”INSERT INTO avnum VALUES (‘”.
$num.
“‘,'”.
$name.
“‘);”;

$scd=$conn->query($sql);
}
}
?>

<?php
$sql=”select count(*) from avnum;”;
$cnt=$conn->query($sql);
$sql=”select * from avnum;”;
$data=$conn->query($sql)->fetch_all();

foreach($data as $row){
echo ($row[0]);
echo ” “;
echo ($row[1]);
echo “<br />”;
}
?>

 

B.sumbit.php

<?php
$host=’127.0.0.1′;
$user=’video’;
$password=’nijigaku’;
$dbName=’video’;
$conn = new mysqli($host, $user, $password,$dbName);

if ($conn->connect_error) {
die(“连接失败: ” . $conn->connect_error);
}
echo ‘连接成功<br />’;

$sql=”CREATE TABLE IF NOT EXISTS avnum( “.
“avnum varchar(10) not null,”.
“vdname varchar(100),”.
“PRIMARY KEY ( avnum ))ENGINE=InnoDB DEFAULT CHARSET=utf8;”;
$scd=$conn->query($sql);

if ($scd){
echo ‘创建成功<br />’;
}
?>

<?php
if (!empty($_POST[‘avnum’])){
$num=$_POST[‘avnum’];
$name;
if (!empty($_POST[‘vdname’])){
$name=$_POST[‘vdname’];
}
$sql=”select count(*) from avnum where avnum=”.$num.”;”;
$ext=$conn->query($sql);

$i=0;
$results = array();
foreach($ext as $row){
$results[$i] = $row;
$i++;
}

if ($results[0][‘count(*)’]!=0) { echo ‘av号已经存在!<br />’;}
else {
$sql=”INSERT INTO avnum VALUES (‘”.
$num.
“‘,'”.
$name.
“‘);”;

$scd=$conn->query($sql);

if ($scd){
echo ‘添加成功<br />’;
}
}
}
?>

<form action=”index.php”>
<button type=”submit”>确定</button>
</form>

 

使用PHP study本地架设服务器后的测试结果,如下:

 

结束。接下来PART2.