Home Backend Development PHP7 The second step of preparation for PHP7 message board development

The second step of preparation for PHP7 message board development

Dec 25, 2020 am 09:30 AM
php7

php7 tutorial column explains the second step of preparation for PHP7 message board development

The second step of preparation for PHP7 message board development

Recommended (free): PHP7 Tutorial

Outline of this step:
1. Super global variables$_GET $_POST
2. MYSQL database design
3. Mysqli related database operations, connection and add, delete, modify (select insert delete update) operations


Let’s get to the point :

  • 1. Super global variable $_GET $_POST
    Conceptual things are not explained here. Just like the literal meaning, get means that the user is from The form submission method is get (the attribute in the form is method="get"). If it is post, the submission method is post. The only difference is that post is safer than get and submits more content. The message board submission method must be post
// 获取姓名
$name = $_GET['name'];
$name = $_POST['name'];

// 获取联系方式
$contact= $_GET['contact'];
$contact= $_POST['contact'];

// 获取留言内容,这里如果提交的内容比较多,超过浏览器url长度限制会报错,所以还是建议用post方式
$content= $_GET['content'];
$content= $_POST['content'];
Copy after login
  • 2. MYSQL database design
--
-- 表的结构 `feedback`
--

CREATE TABLE `feedback` (
  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL COMMENT '姓名',
  `contact` varchar(100) NOT NULL COMMENT '联系方式',
  `content` text NOT NULL COMMENT '留言内容',
  `addtime` int(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '记录时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='留言板数据表';
Copy after login

Search record operation:

// localhost数据库地址,本地数据库一般都是这个或者127.0.0.1;php_course是数据表,即用户提交留言信息保存的数据表
$mysqli = mysqli_connect('localhost', '数据库账号', '数据库密码', 'php_course');
if(mysqli_connect_errno()){
    echo '连接数据库失败:'.mysqli_connect_error();
    exit;
}
mysqli_query($mysqli, "SET NAMES UTF8"); // 因为文件编码是utf8,所以数据记录集也需要设置utf8编码,否否则查询出来的结果会乱码
$sql = "SELECT * FROM feedback"; // 查询sql语句
$result = mysqli_query($mysqli, $sql); // 执行语句
$rows_num = mysqli_affected_rows($mysqli); // 返回记录数,只是一个统计,可以不用
echo $rows_num;
// 开始遍历记录集,循环获取所有feedback表中的所有记录并赋值到$all_row
$all_row = array();
while($rows = mysqli_fetch_array($result)){
    print_r($rows);
    $all_row[] = $rows;
}
// $all_row就是feedback的所有结果集
print_r($all_row);
Copy after login

Record storage operation:

$mysqli = mysqli_connect('localhost', 'root', '', 'php_course');
if(mysqli_connect_errno()){
    echo '连接数据库失败:'.mysqli_connect_error();
    exit;
}
mysqli_query($mysqli, "SET NAMES UTF8");
$sql = 'INSERT INTO feedback (name, contact, content, addtime) VALUES ("测试", "qq1000", "留言内容", '.$time.')';
$result = mysqli_query($mysqli, $sql);
$insert_id = mysqli_insert_id($mysqli); // 返回数据表的自增长ID,比如新用户注册返回用户ID
echo $insert_id; // 当你在调试的时候,你会发现echo是很好的帮手。
if($insert_id > 0){
    // 如果入库成功,可以做什么
}
Copy after login

Modification and update:

// 修改更新
// 修改之前需要根据id查找记录是否存在,如果存在则可以修改(这种情况很常用,比如用户后台,除了验证用户是否登录还需要验证当前修改的记录是否属于当前用户)
$mysqli = mysqli_connect('localhost', 'root', '', 'php_course');
if(mysqli_connect_errno()){
    echo '连接数据库失败:'.mysqli_connect_error();
    exit;
}
$sql = "SELECT * FROM feedback WHERE id = 3";
$result = mysqli_query($mysqli, $sql); // 返回一个资源标识符,通常是数字
$row = mysqli_fetch_array($result);
if(!empty($row)){
    // 执行更新操作
    $update_sql = "UPDATE feedback SET name='修改后的名字' WHERE id={$row['id']}";
    if(FALSE !== mysqli_query($mysqli, $update_sql)){
        // 修改成功
    }
}else{
    echo '信息不能再或者不属于你的。';
    exit();
}
Copy after login

Delete operation:

// 删除操作
// 跟修改更新同样,删除之前需要判断当前删除的记录是否存在(如果还有图片附件,需要先删除附件再删除记录)
$mysqli = mysqli_connect('localhost', 'root', '', 'php_course');
if(mysqli_connect_errno()){
    echo '连接数据库失败:'.mysqli_connect_error();
    exit;
}
$sql = "DELETE FROM feedback WHERE id = 3";
$result = mysqli_query($mysqli, $sql); // 返回一个资源标识符,通常是数字
if(FALSE !== $result){
    // 删除成功
}
Copy after login

This section is mainly about php mysql operations, and sql statements are relatively frequently used. , but it’s just those few syntaxes that we will commonly use in the future.

  • 1. select to find records
  • 2. insert into to insert data
  • 3. update to modify data
  • 4.delete to delete data (this It is hard deletion, which is permanent deletion and usually cannot be retrieved. There is also soft deletion, which will be discussed in the future)

Students remember to practice frequently and memorize these operations to master them. If you encounter problems during the learning process, you can discuss them at any time in the comment area below.
Okay, that’s it for this section. In the next section, we will sort out the code to make it more readable.

The above is the detailed content of The second step of preparation for PHP7 message board development. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to install mongo extension in php7.0 How to install mongo extension in php7.0 Nov 21, 2022 am 10:25 AM

How to install the mongo extension in php7.0: 1. Create the mongodb user group and user; 2. Download the mongodb source code package and place the source code package in the "/usr/local/src/" directory; 3. Enter "src/" directory; 4. Unzip the source code package; 5. Create the mongodb file directory; 6. Copy the files to the "mongodb/" directory; 7. Create the mongodb configuration file and modify the configuration.

How to solve the problem when php7 detects that the tcp port is not working How to solve the problem when php7 detects that the tcp port is not working Mar 22, 2023 am 09:30 AM

In php5, we can use the fsockopen() function to detect the TCP port. This function can be used to open a network connection and perform some network communication. But in php7, the fsockopen() function may encounter some problems, such as being unable to open the port, unable to connect to the server, etc. In order to solve this problem, we can use the socket_create() function and socket_connect() function to detect the TCP port.

What should I do if the plug-in is installed in php7.0 but it still shows that it is not installed? What should I do if the plug-in is installed in php7.0 but it still shows that it is not installed? Apr 02, 2024 pm 07:39 PM

To resolve the plugin not showing installed issue in PHP 7.0: Check the plugin configuration and enable the plugin. Restart PHP to apply configuration changes. Check the plugin file permissions to make sure they are correct. Install missing dependencies to ensure the plugin functions properly. If all other steps fail, rebuild PHP. Other possible causes include incompatible plugin versions, loading the wrong version, or PHP configuration issues.

PHP Server Environment FAQ Guide: Quickly Solve Common Problems PHP Server Environment FAQ Guide: Quickly Solve Common Problems Apr 09, 2024 pm 01:33 PM

Common solutions for PHP server environments include ensuring that the correct PHP version is installed and that relevant files have been copied to the module directory. Disable SELinux temporarily or permanently. Check and configure PHP.ini to ensure that necessary extensions have been added and set up correctly. Start or restart the PHP-FPM service. Check the DNS settings for resolution issues.

How to install and deploy php7.0 How to install and deploy php7.0 Nov 30, 2022 am 09:56 AM

How to install and deploy php7.0: 1. Go to the PHP official website to download the installation version corresponding to the local system; 2. Extract the downloaded zip file to the specified directory; 3. Open the command line window and go to the "E:\php7" directory Just run the "php -v" command.

How to automatically set permissions of unixsocket after system restart? How to automatically set permissions of unixsocket after system restart? Mar 31, 2025 pm 11:54 PM

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

Why does an error occur when installing an extension using PECL in a Docker environment? How to solve it? Why does an error occur when installing an extension using PECL in a Docker environment? How to solve it? Apr 01, 2025 pm 03:06 PM

Causes and solutions for errors when using PECL to install extensions in Docker environment When using Docker environment, we often encounter some headaches...

Which one is better, php8 or php7? Which one is better, php8 or php7? Nov 16, 2023 pm 03:09 PM

Compared with PHP7, PHP8 has some advantages and improvements in terms of performance, new features and syntax improvements, type system, error handling and extensions. However, choosing which version to use depends on your specific needs and project circumstances. Detailed introduction: 1. Performance improvement, PHP8 introduces the Just-in-Time (JIT) compiler, which can improve the execution speed of the code; 2. New features and syntax improvements, PHP8 supports the declaration of named parameters and optional parameters, making functions Calling is more flexible; anonymous classes, type declarations of properties, etc. are introduced.

See all articles