>백엔드 개발 >PHP7 >PHP7 게시판 개발 준비의 두 번째 단계

PHP7 게시판 개발 준비의 두 번째 단계

coldplay.xixi
coldplay.xixi앞으로
2020-12-25 09:30:322279검색

php7 튜토리얼이 칼럼에서는 PHP7 메시지 보드 개발 준비의 두 번째 단계를 설명합니다

PHP7 게시판 개발 준비의 두 번째 단계

권장(무료): PHP7 튜토리얼

이 단계 개요:
1 . 슈퍼 전역 변수 $_GET $_POST$_GET $_POST
2、MYSQL数据库设计
3、mysqli相关数据库操作,连接及增删改查(select insert delete update)操作


下面进入正题:

  • 1、超全局变量$_GET $_POST
    概念性的东西这里不阐述,正如字面上的意思一样,get的意思是用户是从提交方式为get的form表单提交过来的(form中属性是method="get"),如果是post就是提交方式为post,唯一的区别是post比get安全,而且提交的内容更多。留言板提交方式建议一定是post2. MYSQL 데이터베이스 설계
  • 3. Mysqli 관련 데이터베이스 작업, 추가, 삭제, 수정(선택 삽입 삭제 업데이트) 작업

    본론으로 들어가겠습니다:
1. 슈퍼 전역 변수 $_GET $_POST

여기서는 개념적인 내용을 설명하지 않습니다. get은 사용자가 제출한다는 의미입니다. 제출 방법에서 get으로 양식이 제출됩니다(양식의 속성은 method="get"입니다). 유일한 차이점은 게시물이 get보다 안전하고 더 많은 콘텐츠가 있다는 것입니다. 제출된. 게시판 제출 방법은 게시물이어야 합니다

// 获取姓名
$name = $_GET['name'];
$name = $_POST['name'];

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

// 获取留言内容,这里如果提交的内容比较多,超过浏览器url长度限制会报错,所以还是建议用post方式
$content= $_GET['content'];
$content= $_POST['content'];

2. MYSQL 데이터베이스 설계

--
-- 表的结构 `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='留言板数据表';
기록 검색 작업:

// 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);
기록 저장 작업:
    $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){
        // 如果入库成功,可以做什么
    }
  • 수정 및 업데이트:
  • // 修改更新
    // 修改之前需要根据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();
    }
  • 삭제 작업:
  • // 删除操作
    // 跟修改更新同样,删除之前需要判断当前删除的记录是否存在(如果还有图片附件,需要先删除附件再删除记录)
    $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){
        // 删除成功
    }
  • 이 섹션은 주로 php+mysql 작업에 관한 것입니다. SQL 문은 비교적 자주 사용되지만 앞으로 일반적으로 사용할 몇 가지 구문일 뿐입니다.
  • 1. 기록 검색을 선택하세요

    2. 데이터를 삽입하려면 삽입하세요

    3. 데이터를 수정하려면 업데이트하세요🎜🎜4. 데이터를 삭제하려면 삭제하세요(강제삭제, 영구삭제이며 일반적으로 복구할 수 없습니다.) 또 다른 방법도 있습니다. 소프트 삭제는 나중에 논의하겠습니다.)🎜🎜🎜학생 여러분, 자주 연습하고 이 동작을 외워서 숙달하세요. 학습 과정에서 문제가 발생하면 언제든지 아래 댓글 영역에서 문제를 논의할 수 있습니다. 🎜알겠습니다. 이 섹션은 여기까지입니다. 다음 섹션에서는 코드를 더 읽기 쉽게 정리하겠습니다. 🎜

    위 내용은 PHP7 게시판 개발 준비의 두 번째 단계의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

  • 성명:
    이 기사는 jianshu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제