Vous êtes sur la page 1sur 3

Tutorial - Busca interna com PHP + MySQL

1
Tutorial Busca interna com PHP +
MySQL
Neste tutorial ensinarei a construir um sistema de busca interna simples. Mostrarei as
ferramentas, porem o conceito de como ser usado cabe a cada desenvolvedor.
necessrio:
Um servidor PHP e MYSQ
Um monitor MYSQ
Um editor de te!to competente
"on#ecimento bsico de PHP
"on#ecimento bsico de MYSQ
"on#ecimento bsico de $#tml
Primeiramente, criaremos uma base de dados com o %nome&do&site' (ue ir conter as
tabelas com os dados do site:
)*bs.: +ente utili,ar nomes de fcil entendimento, mesmo (ue voc- trabal#e so,in#o, para mais tarde
a.ili,ar a manuten/0o1.
m2s(l3 "456+5 76+686S5 nome&do&site9
)o comando "456+5 pode ser usado tanto na cria/0o de base de dados, (uanto na cria/0o de tabelas.
Porem e!iste especifica/:es a serem usadas para a cria/0o de cada um1.
o.o ap;s usaremos a base de dados criada:
m2s(l3 US5 nome&do&site9
)o comando US5 serve para selecionar a base de dados (ue ser utili,ada1.
"om a base de dados criada e selecionada, se.uiremos a criar a.ora a tabela (ue conter
os dados da busca:
m2s(l3 "456+5 +685 tabela&pes(uisa )id int)<=1 auto&increment, #ref c#ar)>==1, title
c#ar)<==1, nome c#ar)<==1, descicao te!t)?==1, P4@M64Y A5Y )id,title,nome119
)como e!plicado acima, o comando "456+5 serve tanto na cria/0o da base de dados, (uanto na cria/0o de
suas tabelas, obs.: * M2SQ n0o aceita caracteres especiais como ), B, / e etc.1.
Para sabermos (uais colunas contem a tabela criada C bem simples, usaremos um
comando muito simples:
m2s(l3 75S" tabela&pes(uisa9
)o comando 75S" tambCm pode ser usado como 75S"4@85, e serve para descrever a tabela )ver o nome
dos campos, os tipos, as c#aves primarias, as c#aves estran.eiras, e e!tras1 sendo assim sabermos em (ue
os valores devem ser inseridos e outras fun/oes1.
Sendo assim ser descrito o se.uinte na tela:
m2s(l3 75S" tabela&pes(uisa9
Dield +2pe Null Ae2 7efault 5!tra
id @N+)<=1 N* P4@ NU 6U+*&@N"45M5N+
#ref "H64)>==1 Y5S NU
title "H64)<==1 N* P4@
Eduardo Gomes Vieira -- Web Designer
E-mail: wdg.eduardo@gmail.com; -- Twitter: www.twitter.com/wdgeduardo
Tutorial - Busca interna com PHP + MySQL

nome "H64)<==1 N* P4@


descricao +5$+ Y5S NU
*E, com nossa tabela pronta iremos inserir al.uns sites:
m2s(l3@NS54+ @N+* tabela&pes(uisa )#ref,title,nome,descri/0o1 F6U5S
)%#ttp:GGHHH..oo.le.com.br', 'Ioo.le.com', 'Ioo.le', 'Site de busca na internet.'1,
)%#ttp:GGHHH.soubalada.com', 'Soubalada.com', 'Sou balada', 'Site de musicas para
doHnload na internet.'19
)obs.: *s valores t-m (ue ser colocados em suas respectivas colunas assim descritas1.
No $#tml a ta. Ja3 C usada para criar linEs, e o endere/o C c#amado pelo atributo
%#ref', ent0o na coluna #ref, colocamos a U4 do site9 * title serve para (ue os leitores de tela
%leiam' o linE para deficientes dei!ando o seu site muito mais semKntico e accessLvel9 o nome C
o(u- aparecer na tela Munto com a descri/0o.
"om o banco de dados criado e a tabela com dois valores iniciais vamos a.ora B parte PHP
da #ist;ria:
Na sua p.ina PHP (ue est locali,ada na pasta %NNN' do seu servidor di.ite o se.uinte
c;di.o e e!plicarei o c;di.o inOline.
Jform actionP'Q' met#odP'.et'3
Jlabel forP'pes(uisa'3Pes(uisar no site&nbsp;O&nbsp;JGlabel3
Jinput nameP'pes(uisar' idP'pes(uisar' t2peP'te!t' G3
Jbr G3
Jinput t2peP'submit' valueP'pes(uisar' G3
JGform3
JRp#p
GS primeiro vamos %pe.ar' os dados do formulrio SG
if) isset)T&45QU5S+UVpes(uisaVW1 1XGSse e!istir o valor pes(uisar do formulrio de
pes(uisa ele coloca o (ue foi di.itado no campo de pes(uisa na varivel Tpes(uisaSG
Tpes(uisa P T&I5+UVpes(uisaVW9
Y
else
GSse n0o ele coloca a varivel Tpes(uisa com um valor em branco SG
Tpes(uisa P NU9
GS"onecta o PHP ao M2SQ, local#ost P ao seu servidor M2SQ, root P ao seu usurio,
m2s(l P a sen#a do M2SQ ) no meu caso a min#a sen#a C M2SQ 1, o comando
%m2s(l&connect' conecta ao servidor M2SQ, a varivel db )Tdb1 contem os valores (ue
conectam ao servidor SG
Tdb P m2s(l&connect)%local#ost', %root', %m2s(l'19
GSo commando %m2s(l&select&db' seleciona a base de dados (ue sera usada, no nosso
caso a tabela criada C %nome&do&site' e a varivel db )Tdb1 C para simplificar e n0o ter
(ue di.itar o c;di.o de novo SG
Tsdb P m2s(l&select&db )%nome&do&site', Tdb19
Tprocura P m2s(l&(uer2)%S55"+ S D4*M tabela&pes(uisa NH545 #ref liEeZ[
Tpes(uisar[Z *4 title liEeZ[Tpes(uisar[Z *4 name liEeZ[Tpes(uisar[Z descricao liEeZ[
Tpes(uisar[Z'19
GS conta as lin#as de resultado SG
Tlin#as P m2s(l&num&roHs)Tprocura19
GS imprime na tela o resultado SG
Eduardo Gomes Vieira -- Web Designer
E-mail: wdg.eduardo@gmail.com; -- Twitter: www.twitter.com/wdgeduardo
Tutorial - Busca interna com PHP + MySQL
!
H#ile)Tmostra P m2s(l&fetc#&arra2)Tprocura11X
R3
J\OO mostra em formato de %titulo ]' )#]1 o linE do site encontrado na busca OO3
J#]3
Ja #refP'JRp#p ec#o TmostraU^#refZW9 R3' titleP'JRp#p ec#o
TmostraU^titleZW9 R3'3
JRp#p ec#o TmostraU^nomeZW9 R3
JGa3
JG#]3
J\OO e a descri/0o di.itada na coluna %descricao' em formato de %Jp3' OO3
Jp3
JRp#p ec#o TmostraU^descricaoZW9 R3
JGp3
JRp#p
Y9
R3
5spero (ue ten#am entendido, (ual(uer duvida, envie um eOmail para
Hd..eduardo_.mail.com ou soulofdeat#e_.mail.com. 6bra/o\\
Eduardo Gomes Vieira -- Web Designer
E-mail: wdg.eduardo@gmail.com; -- Twitter: www.twitter.com/wdgeduardo

Vous aimerez peut-être aussi