Heim > Backend-Entwicklung > PHP7 > Hauptteil

Der zweite Schritt der Vorbereitung für die PHP7-Messageboard-Entwicklung

coldplay.xixi
Freigeben: 2023-02-17 18:30:01
nach vorne
2267 Leute haben es durchsucht

Php7 Tutorial Die Spalte erläutert den zweiten Schritt der Vorbereitung für die Entwicklung von PHP7 Message Board. Super globale Variablen $_GET $_POST2. Mysqli-bezogene Datenbankoperationen, Verknüpfung und Operationen zum Hinzufügen, Löschen und Ändern (select insert delete update).


Kommen wir zum Punkt:

Der zweite Schritt der Vorbereitung für die PHP7-Messageboard-Entwicklung

1. Superglobale Variable $_GET $_POST

Konzeptionelle Dinge werden hier nicht erklärt, genau wie die wörtliche Bedeutung, get bedeutet, dass der Benutzer einreicht die Methode zum Abrufen des Formulars (das Attribut im Formular lautet method="get"). Der einzige Unterschied besteht darin, dass „post“ sicherer ist als „get“ und mehr Inhalt übermittelt wird. Es wird empfohlen, dass die Message-Board-Übermittlungsmethode Post sein muss

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

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

// 获取留言内容,这里如果提交的内容比较多,超过浏览器url长度限制会报错,所以还是建议用post方式
$content= $_GET['content'];
$content= $_POST['content'];
Nach dem Login kopieren
2. MYSQL-Datenbankdesign
--
-- 表的结构 `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='留言板数据表';
Nach dem Login kopieren
Datensatzvorgang suchen:

// 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);
Nach dem Login kopieren

Datensatzspeichervorgang: $_GET $_POST
2、MYSQL数据库设计
3、mysqli相关数据库操作,连接及增删改查(select insert delete update)操作

下面进入正题:

  • 1、超全局变量$_GET $_POST
    概念性的东西这里不阐述,正如字面上的意思一样,get的意思是用户是从提交方式为get的form表单提交过来的(form中属性是method="get"),如果是post就是提交方式为post,唯一的区别是post比get安全,而且提交的内容更多。留言板提交方式建议一定是post
    $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){
        // 如果入库成功,可以做什么
    }
    Nach dem Login kopieren
  • Ändern und aktualisieren :
// 修改更新
// 修改之前需要根据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();
}
Nach dem Login kopieren
    Löschvorgang:
  • // 删除操作
    // 跟修改更新同样,删除之前需要判断当前删除的记录是否存在(如果还有图片附件,需要先删除附件再删除记录)
    $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){
        // 删除成功
    }
    Nach dem Login kopieren
  • In diesem Abschnitt geht es hauptsächlich um PHP+MySQL-Operationen, die relativ häufig verwendet werden, aber es handelt sich nur um die wenigen Syntaxen, die wir in Zukunft häufig verwenden werden.

1. Wählen Sie „Einfügen“, um Daten einzufügen

3. „Löschen“, um Daten zu löschen (dies ist eine dauerhafte Löschung und kann normalerweise nicht wiederhergestellt werden). Es gibt auch eine andere Methode: Das sanfte Löschen wird später besprochen.)

Schüler, denken Sie daran, häufig zu üben und sich diese Vorgänge zu merken, um sie zu meistern. Sollten während des Lernprozesses Probleme auftreten, können Sie diese jederzeit im Kommentarbereich unten besprechen.

Okay, das war's für diesen Abschnitt. Im nächsten Abschnitt werden wir den Code sortieren, um ihn besser lesbar zu machen.

Das obige ist der detaillierte Inhalt vonDer zweite Schritt der Vorbereitung für die PHP7-Messageboard-Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jianshu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage