Rumah pangkalan data tutorial mysql 帮助你开发基于MySQL数据库的论坛设计_MySQL

帮助你开发基于MySQL数据库的论坛设计_MySQL

Jun 01, 2016 pm 02:03 PM
char int berdasarkan membantu membangun pangkalan data artikel forum reka bentuk

1。系统架构: EA vK| `  
采用模块化思想,分为3层: q,n,B|Q  
NY7f  
  a。数据存储层:使用MySQL来存放bbs的所有数据,包括用户信息,文章数据,用户信件,用户消息,系统数据(?),关键问题: 数据库的规划,是否用文件来辅助。 ! _Q"  
CB[H 2 
  b。系统功能层:完成bbs的基本功能,由多个并列模块组成,向下调用mysql的函数访问数据库,向上,接受处理请求,将处理的结果返回上层,根据请求类型,返回成败结果和其他数据。而且模块高度灵活,可以方便的修改增加。包括: V|1Q4[Yc  
O3c"afU  
  ** 用户模块,处理用户的注册,基本数据的修改,权限的变化,网友信息的查询。 e`i K%C;)  
  ** 版面模块,完成文章发表,文章的读取,文章的删除,文章的加标记,读改删权限检查,此模块对数据库的要求最高。 VqZ .K(9  
  ** 精华区模块,包括精华区的文章,目录的增加,删除,上下移动 S ]2u|S  
!_u{|t  
'%H8 pm  
(?)读改删权限检查,目录结构是其中的难点。 n' y/':K  
-rZ%??[rC  
  ** 信件模块,包括发新信件,读删信件,信笺标记,新信件的通知 :U-k* 3e  
  ** 消息模块,包括发送消息,接受消息,新消息通知,消息回顾,消息存信件。 \i#" (w!Q  
  ** 系统动态模块,包括当前上站人数,当前动态,由于变动频繁,此类数据用共享内存实现可能更好。 j" :e#Apb  
  ** 聊天模块,双人聊天是否能借鉴icq的做法,由双方直接通话,但聊天结果存信件可能较麻烦,同时,为兼容telnet功能,当上层服务层为telnet时,增加专门的模块来进行处理。 (.?|T4  
  ** 聊天室模块,利用共享内存还是数据库?开房间,里面的权限问题。根据需要,还能增加新的功能。例如:活动看板模块,但对于非telnet终端,意义好象不大。。。。。

3。数据库设计 ]AD]O? 
O~.{XT$  
  关键还是MySQL的效率问题,合理分配mysql的内存,特别是table cache的 K!?c-1[~}(  
大小。另外,当系统突然掉电呢?mysql是否robust? 6b]~K[cp%  
  table的名字设计,采用一位前缀表明类型,全部用小写表示(?),例如: &WOC)^ Ia  
系统的数据库,以s为前导,如用户表:suser(sUSER 呢?),具体如下: }0gv0Q#  
~^s=i,O  
s :系统表,suser,sclass wJidO_Tu_  
m :用户信件表,msysop,mdrangon ia "3A)4  
w :用户消息表,wsysop,wdrangon mpx9@4pk>  
a :版面索引表,aLinux,acampus e\7*9~}?  
b :版面文章表,blinux,bcampus '{{bfIHz  
c :特殊分类版面表,cnewboard _cY&(_  
i :精华区索引表,ilinux,ilinux01,icampus,icampus04 g@jk'l  
j :精华区文章表,jlinux,jcampus, k9 O5S~^U  
(I?C5*Yu  
  另外,是使用字串还是数字作为标识呢?例如,一个叫sysop的帐号,其 g@;uj Or'  
id是1,他的信的表是msysop还是m00001呢?同样,一个叫campus的版,对应的 5oc:%{ L$  
代码是5,则这个版的文章的表名是bcampus还是b00005呢?可能用字串会容易 PSf V #3  
理解,查错吧。 lR73 R|;  
l?e.%QRW  
用户信息表:suser +>:B-hD^.A  
X ~xt[`s_  
usernum int unique, // 唯一标识符,最多30000个帐号,会不会太少了? \p>N^n-q  
userid char[20] primary key, // 排序的关键字,id,全小写。 XLd@on3?f  
passwd char[20], // 密码,存放加密后的密文。 Jr3=i  
realid char[20], // 实际id,大小写混合。 9'xg>PS  
username char[24], // 用户的泥称 7b 
userlevel longint, // 64种权限? hQrV~P9\c  
nUMLogins int, xas T3G  
numposts int, YuFmcPmT  
firstlogin time, BR?eE@3  
lastlogin time, r%3.H  
staytime time, /* 总共停留时间 */ FD#JN3L1!  
lasthost char[32], 6j%+RR  
email varchar[100], v(0TszV  
address varchar[100], sN7*a )7b  
;dw*g5L)  
// 还需要其他数据吗?是否需要留出一定的保留值,以后alter table来 XDHhobR  
// 增加新的字段时,效率如何? t#t'S?@  
d!_lxJ?w  
版面分类表:sclass {>]h*)% $  
;X 4:9J E  
classnum int unique, // 分类标识 cfDb3,!PU  
classid char[20], // 分类的英文id:computer uf8|mvac  
classname varchar[100],// 分类的中文描述:电脑世界 6} u2yx1 
classtable char[20], // 特殊分类对应的版面表 5 pz\ &  
// 一般来说,每个版面只属于一个分类,对于特殊分类,例如拳头版块, EsGx\0Y|k  
// 新版面,可以用专门的表来描述 aj Jjgs;  
版面表:sboard DY\Q[=X  
k|a[T(  
boardnum int unique, // 版面的标识(需要吗?) W0@_:CFYa  
boardid char[20], // 版面的英文名 \g.@+=cSR  
boardname varchar[100], // 版面的中文名 *i&h`  
boardclass char[20], // 版面所属分类 {n/L}w_Z  
boardsysop varchar[100], // 斑竹名单 ]y{wUf k  
boardposts int, // 版面的文章数 B22[ER  
boardlevel int, // 版面的读写权限 a3_=C!A7H  
indextable char[20], // 版面对应的索引表的名称:aboardid? RGf5g #  
texttable char[20], // 版面对应的文章表名称: bboardid? >38CZUP  
$)zW0oa  
// 最后两项有没有必要出现,是否可以作为必然对应关系,还是允许 =(&"F\r@X  
// 出现更大的灵活性?另外版面的大小写问题是否可以直接默认 QO} y_~@  
// 只开头字母大写, `AvA 34S;  
d"Xf`@B&ZZ  
特殊分类版面表:snewboard, sstarboard )\hbT[s%  
k/bqGHYb  
boardid char[20], // 版面的id )_17O93d7W  
// 这样的表有必要吗? o^}&o,+  
qT'wA*{  
版面索引表:acampus,aLinux,afootball。。。。。。 00,Viq6  
V\T7W|(  
id int, // 文章序数,要手动调整???? dMq nEP@ 
mark char[1], // 文章标记,m,g,b,d。。。。 WqZ9Dn3l  
title varchar[100], // 文章标题 @ThXa"  
writer char[20], // 文章作者id i1 +Q@pw  
posttime time, // 发表时间 .,&y>  
textnum longint, // 对应的编号???不调整 U/jc[j@  
qhPa{~  
版面文章表 $lq H  
zzaoFki[  
textnum longint, // 文章编号? c{8=MZvM\  
textword text, // 文章内容? v3*wj*Bk  
Pil=(%s  
// 有必要将索引和文章内容分开吗?从效率上看,况且lazy flush /eJ*o~U&  
// 是必然的。删除也是先做个标记。 DFqN|i_ `  
d;R.o  
// 用户中的版面文章是否未读的数据比较繁,是否应该再建一堆的表 i| O~^DVD  
// 才能实现呢? *Z',OZxB  
// 投票功能暂不考虑。。。。

4。用户模块设计 D  
 对于底层数据库,调用MySQL的C API函数来进行数据库的修改,内部保存一定的状态变量(例如用户名,还是留给上一层完成?),对上一层,则提供用户管理的接口。 ,3$]1*K- 9  
+.6"#p"PF  
Class UserManage { ~(JH>?ncMI  
private: \d.GW9FV  
char myuserid[20]; // 用户的id,未登陆前为空 JPmJ  
time logintime; // 用户登陆时间,并用于计算停留时间 Pw_ngscK  
char loginhost[20]; //上站地点。 5Ri/^;W  
FsO/'G  
public: ZnnC%9~,  
Qr^' 9 _T  
int NewUser( char *userid, char *passwd ); ^)%{=*Sx:  
新建一个用户,判断是否已经有,其他资料暂时为空, @#tdSD^`M  
firstlogintime,权限等设缺省值。 Y);DKP/  
int UserLogin( char *userid, char *passwd ); uxxyQz2 q  
用户登陆,验证密码, !isP~z  
int ChangePasswd( char *oldpasswd, char *newpasswd ); $$|cbQ,  
修改密码,要求原密码一致。 j=]Y `V>  
int ChangePriData( char *newname, char *newemail, ?8iZi$t!  
char *newaddr ); TIWNQ+t8  
改变基本数据,泥称,email,住址。。。。 d]t3sa)WSf  
int ModifyNumData( int addlogin, int addpost ); w=a~yi}Dl  
修改文章数,上站次数,等数据。。。。注意调用对象。 Yjh(~P  
int UserLogout(); $-Q"=7  
用户退出,修改lastlogin,staytime,loginhost等 y]qi\nw5\  
#l=$]aD&e  
// 普通查询命令 @yW m7  
int QueryCommonData( const char * userid, int& loginnum, XS1i 
char * username, int& postnum, 42 VZv  
time& lastlogin, char *lasthost ); 31.tCQo}TU  
查询网友基本信息。 y9%_^7 b*  
!)Rwh2Z  
// 特权指令,函数在完成功能前,先判断权限。 'K=ZtHu`C  
int QueryPriData( const char * userid, char *email, @AL|i>mV  
char *addr ); =8kY1o ]  
查询基本信息,普通人只能查自己,有特权才能查其他人。 G K=]R;Fq_  
int ModifyUserLevel( BOOL isAdd, unsigned long level ); zi \N>M 
修改用户的权限, lg7jZJA\  
int ModifyUserId( char *oldid, char *newid ); m?[~,Pg=  
char *newemail, char *newaddr ); 8 T~^\8U)  
修改用户的基本数据。 tKesJ.U  
int ModifyUserNumdata( char *userid, int addlogin, int addpost ); TjoEGoTf, 
修改用户的文章数等数据。 f=)!.u; 
int ModifyUsERPasswd( char *userid, char *newpasswd ); Xr#:@8Y;  
修改用户的密码。 "5'$Bs&=  
} mdzn! %.f6  
5Pc#4CWUP  
  以上各个函数难度不大,都是执行相应的sql语句,访问mysql数据库,是否将一般指令归到特权指令中去呢?权限的检查,是放在这一层还是上一层? yyyhM9*"YR  
  这更多的是看考虑的着重点,是看程序的清晰性还是代码的简练,可能还是看代码吧,毕竟要考虑访问量,另外,上层服务层是否也应该考虑权限检查问题呢? wvK@GL?  
5。版面模块设计 1XZyP [Ik  
| [zXh]TI  
   所谓分类,更多的是为telnet服务端考虑的,在cq66模式下,用户可以按照自己的意愿进行分类,反正最后都是直接以版为基本单位访问的。 c%8?":bQ  
  对于版面文章的访问,存放的时候以整篇文章为参数,文章的分块由本层完成,如果上层以块为单位传送,则在上层全部传完,组合后,再传参到本层分解;在读取 的时候,本层则以块为单位访问,如果上层要以全文为单位访问,则在上层做合并 工作,本层不管。 I._}jCOC1U  
  至于要不要独立出索引,不影响上层的操作,主要和下层的数据库构造有关,主要考虑可行性,效率需求等。 *z:2fk>  
  权限的检查放在哪里进行呢?还是放在上层吧,其实就telnet服务器端,和cq66 的客户端,根本不会给一般用户显示特殊指令的菜单,当然,用户可以直接发送cq66 的指令,服务器方还是要检查的。但应该不用在它下面的功能模块层再检查一次吧 。 :R6lJb:48  
tv5VSP.I  
Class BoardManage { 1f> 6sl  
private: u4P{-"~'  
R3 WIn.de  
public: R%0LmFoK  
// 有关分类的操作 c|$& -$!7  
int GetClassNameInfo( int maxclass, char **classid, R/iz#mLX  
char ** classname ); yGFZ)IIw  
返回分类的信息,中英文名。 W7|oo#9azg  
int GetBoardName( int maxboards, char *classid, _H' 3nN7G=  
char **boardname ); uF&HM +a  
返回某分类中的版面信息,一般分类,直接select .. `TY s8^D  
from sboard i/pp?epU  
where boardclass == .... 特殊分类则查相应的表。。。。 y7bj -  
>:\zTsV"  
// 修改需要版面管理员以上的特权 d\l!MOGL  
int NewClass( char * newclassname, int type ); `%[j,Z#  
新建分类,普通分类还是特殊分类, 2MNg\rbp  
int DeleteClass( char *newclassname ); lyl:a]a  
删除分类,但不cascade,即本层不负责一致性,由上层负责将 Rc 
相应的版面的分类信息改为别的。分类改名也是先删再建, 4||6=L  
int AddClassBoard( const char *classname, char *newboardname ); `/!\!*gz|N  
将已建好的版加入某分类中,专门针对特殊分类,对一般分类,其 ^aHBtr:  
效果和modifyboardinfo一样, %0' Y?%s  
int DeleteClassBoard( const char *classname, char *boardname ); UYTZw9-^O  
从分类中删除某个版,也是针对特殊分类,对一般分类,效果也 $|SWF=Q  
是和modifyboardinfo一样,一个版的分类属性可以为空,即不属 6^{n!i&q|{  
于任何分类。 4}BAXm?F  
// 有关版的信息的操作。 R( 1v  
int NewBoard( const char *boardid,char *boardname); FWvL`  
新建一个版,建立对应的表。其他参数取默认值。 2 N F)i  
int DeleteBoard( const char *boardid ); bopeof8  
删除一个版,删除对应的表。 ~2Ap?gwoax  
int GetBoardInfo( const char *boardid, char *boardname, GdPMT|^  
int& numposts, char *masters, char *class, \_0M  
long &level ); =kU9A*?  
取的版面的信息。 yGp{ "  
int ModifyBoardId( const char *oldid, char *newid ); g`_ca  
改变版的英文id,对应table的名称也要改变, 7-*gd 8Xd}  
int ModifyBoardInfo( const char *boardid, char *boardname, IJV(2#*Y  
int numposts, char *masters, char *class, #+@tDx=  
long level ); H[8nq{0 @  
修改版面信息,需要特权。 jVYv+9pk  
obX%,/  
// 有关版面文章的操作。 irGM_mh%-  
int AddText( char *boardid, char *title, char *writer, )bJ] 5f 9  
char *text ); _M WRO  
往版面中增加文章,内部将长文章分割成2k的块。 Fmi3E2N  
int DeleteText( char *boardid, int num ); B`UdWdjr0(  
删除文章,只是做一个标记,并不立刻修改对应的table。 OohU?!7;OP  
int FlushTable( char *boardid ); %|3AMv;p  
刷新版面,删除被删文章的对应的记录。 NAiOE(B  
int MarkText( char *boardid, int num, char mark ); DmA{jNn1 
给文章做标记。 o?U31}  
int ModifyTitle( char *boardid, int num, char *newtitle ); ' ;OR.L 
修改文章的标题。 zdV"8!  
int ModifyText( char *boardid, int num, char *newtext ); 78j}j!H1  
修改文章内容,不是自己的文章需要特权。 XFc&GYW|  
int GetTextInfo( const char *boardid, int num, char *title, DR8xyAy_  
char *writer, char& mark ); 0` RcHOk  
取得文章的标题信息。 +P7]T(L:k  
int GetText( const char *boardid, int num, int block, qCI;k{Eq  
char *text ); D" (* }K  
读取文章的内容,以块为单位。 Vtr>w f]yn  
hpy e6AA  
// 文章和作者的查询 61"\x% I  
// 一次将查询的结果全部返回? A1"~vh  
int QueryWriter( const char *boardid, char *writer,

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

ZTE 5G Wi-Fi U50S mudah alih dijual pada harga NT$899 pada harga awal: kelajuan rangkaian maksimum 500Mbps ZTE 5G Wi-Fi U50S mudah alih dijual pada harga NT$899 pada harga awal: kelajuan rangkaian maksimum 500Mbps Apr 26, 2024 pm 03:46 PM

Menurut berita pada 26 April, Wi-Fi U50S mudah alih 5G ZTE kini dijual secara rasmi, bermula pada 899 yuan. Dari segi reka bentuk penampilan, Wi-Fi Mudah Alih ZTE U50S adalah ringkas dan bergaya, mudah dipegang dan dibungkus. Saiznya ialah 159/73/18mm dan mudah dibawa, membolehkan anda menikmati rangkaian berkelajuan tinggi 5G pada bila-bila masa dan di mana-mana, mencapai pengalaman pejabat mudah alih dan hiburan tanpa halangan. Wi-Fi U50S mudah alih ZTE 5G menyokong protokol Wi-Fi 6 lanjutan dengan kadar puncak sehingga 1800Mbps Ia bergantung pada platform 5G berprestasi tinggi Snapdragon X55 untuk menyediakan pengalaman rangkaian yang sangat pantas. Ia bukan sahaja menyokong persekitaran rangkaian SA+NSA dwi-mod 5G dan jalur frekuensi Sub-6GHz, kelajuan rangkaian yang diukur malah boleh mencapai 500Mbps yang menakjubkan, yang mudah memuaskan.

Honor Magic V3 memperkenalkan teknologi perlindungan mata nyahfokus AI: berkesan mengurangkan perkembangan rabun Honor Magic V3 memperkenalkan teknologi perlindungan mata nyahfokus AI: berkesan mengurangkan perkembangan rabun Jul 18, 2024 am 09:27 AM

Menurut berita pada 12 Julai, siri Honor Magic V3 telah dikeluarkan secara rasmi hari ini, dilengkapi dengan skrin perlindungan mata Honor Vision Soothing Oasis yang baharu Walaupun skrin itu sendiri mempunyai spesifikasi tinggi dan kualiti tinggi, ia juga mempelopori pengenalan perlindungan mata aktif AI teknologi. Dilaporkan bahawa cara tradisional untuk mengurangkan rabun adalah "kaca mata rabun". Kuasa cermin mata rabun diagihkan secara sama rata untuk memastikan kawasan pusat penglihatan diimej pada retina, tetapi kawasan persisian digambarkan di belakang retina. Retina merasakan bahawa imej berada di belakang, menggalakkan arah paksi mata berkembang kemudian, dengan itu mendalamkan darjah. Pada masa ini, salah satu cara utama untuk mengurangkan perkembangan rabun adalah "kanta nyahfokus". Kawasan pusat mempunyai kuasa biasa, dan kawasan persisian diselaraskan melalui partition reka bentuk optik, supaya imej di kawasan persisian jatuh ke dalam. hadapan retina.

Telefon bimbit Honor X60i dijual bermula dari 1,399 yuan: skrin langsung OLED segiempat visual Telefon bimbit Honor X60i dijual bermula dari 1,399 yuan: skrin langsung OLED segiempat visual Jul 29, 2024 pm 08:25 PM

Menurut berita pada 29 Julai, telefon bimbit Honor X60i dijual secara rasmi hari ini, bermula pada 1,399 yuan. Dari segi reka bentuk, telefon bimbit Honor X60i menggunakan reka bentuk skrin lurus dengan lubang di tengah dan sempadan ultra-sempit yang hampir tidak terhad pada keempat-empat sisi, yang meluaskan bidang pandangan. Parameter Honor X60i Paparan: Paparan definisi tinggi 6.7 inci Bateri: Bateri berkapasiti besar 5000mAh Pemproses: Pemproses Dimensity 6080 (TSMC 6nm, 2x2.4G A76+6×2G A55) Sistem: Sistem MagicOS8.0 Ciri-ciri lain: peningkatan isyarat 5G , kapsul pintar, cap jari bawah skrin, dwi MIC, pengurangan hingar, Soal Jawab pengetahuan, keupayaan fotografi: sistem dwi kamera belakang: 50 juta piksel kamera utama, 2 juta piksel kanta tambahan, kanta selfie hadapan: 8 juta piksel, harga: 8GB

iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak Jul 18, 2024 am 05:48 AM

Keluaran terbaharu Apple bagi sistem iOS18, iPadOS18 dan macOS Sequoia telah menambah ciri penting pada aplikasi Photos, yang direka untuk membantu pengguna memulihkan foto dan video yang hilang atau rosak dengan mudah disebabkan pelbagai sebab. Ciri baharu ini memperkenalkan album yang dipanggil "Dipulihkan" dalam bahagian Alat pada apl Foto yang akan muncul secara automatik apabila pengguna mempunyai gambar atau video pada peranti mereka yang bukan sebahagian daripada pustaka foto mereka. Kemunculan album "Dipulihkan" menyediakan penyelesaian untuk foto dan video yang hilang akibat kerosakan pangkalan data, aplikasi kamera tidak disimpan ke pustaka foto dengan betul, atau aplikasi pihak ketiga yang menguruskan pustaka foto. Pengguna hanya memerlukan beberapa langkah mudah

Proses susun baru! Xiaomi MIX Fold 4 dilengkapi dengan bateri Jinshajiang 'berbentuk khas tiga dimensi' buat kali pertama Proses susun baru! Xiaomi MIX Fold 4 dilengkapi dengan bateri Jinshajiang 'berbentuk khas tiga dimensi' buat kali pertama Jul 20, 2024 am 03:20 AM

Menurut berita pada 19 Julai, Xiaomi MIX Fold 4, telefon lipat perdana pertama, dikeluarkan secara rasmi malam ini dan dilengkapi dengan "bateri berbentuk khas tiga dimensi" buat kali pertama. Menurut laporan, Xiaomi MIX Fold4 telah mencapai kejayaan besar dalam teknologi bateri dan mereka bentuk "bateri berbentuk khas tiga dimensi" yang inovatif khusus untuk skrin lipat. Peranti skrin lipat tradisional kebanyakannya menggunakan bateri persegi konvensional, yang mempunyai kecekapan penggunaan ruang yang rendah. Untuk menyelesaikan masalah ini, Xiaomi tidak menggunakan sel bateri penggulungan biasa, tetapi membangunkan proses laminasi baharu untuk mencipta bentuk bateri baharu, yang sangat meningkatkan penggunaan ruang. Inovasi Teknologi Bateri Untuk menyusun kepingan elektrod positif dan negatif secara bergilir-gilir dan memastikan pembenaman ion litium yang selamat, Xiaomi telah membangunkan mesin kimpalan ultrasonik dan mesin laminasi baharu untuk meningkatkan ketepatan kimpalan dan pemotongan.

Apple iPad Pro/Air 2024 tidak menyokong Apple Pencil generasi kedua: model baharu boleh dibeli jika perlu Apple iPad Pro/Air 2024 tidak menyokong Apple Pencil generasi kedua: model baharu boleh dibeli jika perlu May 08, 2024 pm 04:07 PM

Menurut berita pada 8 Mei, tablet iPad Pro/Air baharu Apple telah dikeluarkan Menurut laman web rasmi Apple, iPad Pro dan iPad Air baharu tidak lagi menyokong Apple Pencil generasi kedua yang dikeluarkan pada 2018, tetapi hanya menyokong Apple Pencil Pro. dan Pensil Apple (USB- C). Apple Pencil (USB-C) akan dikeluarkan pada November 2023. Stilus ini mengekalkan ketepatan tahap piksel, kependaman rendah dan ciri penderiaan sudut condong yang sama seperti Apple Pencil generasi pertama dan kedua, sambil menghapuskan fungsi dan kepekaan tekanan tidak menyokong pengecasan tanpa wayar. Harganya ialah 649 yuan. Dan ApplePe yang baru dikeluarkan

Telefon Vivo dengan isyarat paling kuat! vivo X100s dilengkapi dengan sistem penguatan isyarat universal: 21 antena, reka bentuk sekeliling 360° Telefon Vivo dengan isyarat paling kuat! vivo X100s dilengkapi dengan sistem penguatan isyarat universal: 21 antena, reka bentuk sekeliling 360° Jun 03, 2024 pm 08:41 PM

Menurut berita pada 13 Mei, vivoX100s telah dikeluarkan secara rasmi malam ini Selain imej yang sangat baik, telefon baharu ini juga menunjukkan prestasi yang sangat baik dari segi isyarat. Menurut pengenalan rasmi vivo, vivoX100s menggunakan sistem penguatan isyarat universal yang inovatif, yang dilengkapi dengan sehingga 21 antena. Reka bentuk ini telah dioptimumkan semula berdasarkan skrin langsung untuk mengimbangi banyak keperluan isyarat seperti 5G, 4G, Wi-Fi, GPS dan NFC. Ini menjadikan vivoX100s sebagai telefon mudah alih dengan keupayaan penerimaan isyarat terkuat dalam sejarah vivo. Telefon baharu ini juga menggunakan reka bentuk keliling 360° yang unik, dengan antena diedarkan di sekeliling badan. Reka bentuk ini bukan sahaja meningkatkan kekuatan isyarat, tetapi juga mengoptimumkan pelbagai postur pegangan harian untuk mengelakkan masalah yang disebabkan oleh kaedah pegangan yang tidak betul.

Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Jun 04, 2024 pm 01:42 PM

Cara menggunakan MySQLi untuk mewujudkan sambungan pangkalan data dalam PHP: Sertakan sambungan MySQLi (require_once) Cipta fungsi sambungan (functionconnect_to_db) Fungsi sambungan panggilan ($conn=connect_to_db()) Laksanakan pertanyaan ($result=$conn->query()) Tutup sambungan ( $conn->close())

See all articles