Mr * Techie
voit helposti luoda oman hakukoneen PHP.
tämä on tekstiruutu, jossa käyttäjä kirjoittaa termin ja painaa Lähetä-painiketta, minkä jälkeen hakukone ohjaa hänet etsimälleen sivulle. Käyttäjä voi esimerkiksi kirjoittaa lauseen ”youtube”, jonka jälkeen hänet ohjataan YouTuben kotisivulle.
tämän tyyppinen hakukone ei ole google. Se ei etsi läpi kymmeniä sivustoja ja lähettää sitten olennaisimmat tulokset kyselyn perusteella. Se ei ole niin kehittynyt. Mitä se tekee on, mukaan hakukyselyn, että annat, jos on vastaava if-lauseke, että kysely, se ohjaa henkilön sivulle olennaisin mukaan kyseisen kyselyn. Se ei siis ole hakukone, joka palauttaa monia merkityksellisiä tuloksia, vaan hakukone, joka ohjaa käyttäjän sivulle. Se on paljon yksinkertaisempi hakukone, mutta silti erittäin tehokas perustarkoituksiin ja jotain saatat haluta sivustosi.
tämäntyyppisen hakukoneen rakentaminen ei oikeastaan ole lainkaan vaikeaa. Se on itse asiassa hyvin yksinkertainen koodi.
tätä varten aloitetaan HTML: stä. Luomme tekstikentän, kuten alla on esitetty:
ainoat termit tämä hakukone Sisältää tähän mennessä:
Dropbox
Amazon
google
ebay
wikipedia
youtube
Hess toy truck
LM7805
HTML-koodi
HTML-koodi, jolla tämä yllä oleva tekstiruutu luodaan, on:
nyt kun olemme luoneet tekstikentän ja käyttäjä voi kirjoittaa etsimänsä termin, meidän on nyt ohjattava käyttäjä tarvittavalle sivulle hänen syöttämänsä hakukyselyn s/perusteella. Esimerkiksi, jos käyttäjä syöttää hakukyselyn, ”wikipedia”, meidän täytyy ohjata hänet wikipedia verkkosivuilla. Voit tehdä tämän, käytämme PHP. PHP poimii hakutermin, jonka käyttäjä on syöttänyt, ja käyttää if-lausumien sarjaa nähdäkseen, vastaako kyseinen termi verkkosivustollamme olevaa termiä. Jos se tekee, me sitten ohjata käyttäjän tarvittavat sivu, että hakutermi käyttäen PHP header-toiminto. Tämä selitetään jäljempänä. Jos mikään hakusana ei vastaa mitään, mitä meillä on sivuillamme, sitten ohjaamme käyttäjän sivulle, jossa todetaan, ”ei haut täsmäävät”.
esimerkki
esimerkki tästä on käyttäjä, joka etsii termiä ”Hess toy trucks”. Meidän täytyy luoda sivu Hess toy trucks niin, että kun käyttäjä tulee termi, meillä on sivu ohjata ne, ja meidän täytyy luoda if lausuma PHP sivu, searchpage.php tarkistaa, mikä termi on valittu.
näin kertoo PHP: n sivu, hakusivu.php, näyttää:
pohjimmiltaan, PHP sivu, searchpage.php, hakee hakutermi, että käyttäjä syöttää käyttämällä superglobal array, $_POST, ja sitten vertaa sitä vastaan sarjan if lausuntoja. Jos käyttäjän syöttämä hakusana vastaa hakusanaa, joka on if-lauseiden sarja, käyttäjä ohjataan sille sivulle, jonka URL määrittää otsikkofunktiossa. Jos mikään hakusanoista ei täsmää, lauseke, ei täsmääviä hakuja tulostetaan näytölle.
yksi temppu, jolla yksinkertaistamme tätä prosessia, on se, että kun haemme käyttäjän syöttämän hakutermin, merkitsemme merkkijonon strtolower () – funktiolla. Tästä syystä riippumatta siitä, mitä merkkijonoa käyttäjä syöttää, siitä tulee pieniä kirjaimia. Siksi, kun vertaamme merkkijonoja, voimme vain verrata sitä merkkijonon kanssa pienaakkosella aakkosellinen merkkejä. Esimerkki on eri käyttäjät kirjoittamalla ”Hess Truck”, ”HESS TRUCK”, ”Hess truck”, ja ”HESS truck”. Jos emme muuntaa näitä pieniä kirjaimia, meidän olisi oltava vertailuja kunkin Isolla kunkin kirjaimen kunkin sanan. Nämä olisivat tylsiä. Muuntamalla merkkijono kaikki pienet kirjaimet, meidän täytyy vain verrata merkkijono sen kaikki pienet vastaavat. Siksi meidän täytyy vain verrata sitä line if ($tulos== ”hess truck”).
hakusivulle voi laittaa niin monta termiä kuin haluaa.php ja ohjata käyttäjät halutulle sivulle otsikkofunktion avulla.
tämä hakukone toimii hyvin, mutta siinä on yksi ongelma. Se palauttaa tuloksen vain, jos käyttäjä syöttää tarkan lauseen etsit. Esimerkiksi, jos käyttäjä yrittää etsiä tietoa lm7805 jännitteen säädin ja tyypit ’lm7805 jännitteen säädin’ sijasta vain ’LM7805’, haku ei ohjaa sivulle lm7805 jännitteen säätimiä. Tämä johtuu siitä, että If-lauseke etsii koodin mukaisesti lausekkeen tarkkaa yhtäläisyyttä (==). Näin ollen sen on oltava täydellinen ottelu. Sama juttu toisessa hakukyselyssä. Jos käyttäjä kirjoittaa ”google homepage” eikä ”google”, henkilöä ei tuoda Googlen verkkosivustolle. Tämä johtuu siitä, että jälleen if: n lausuma etsii suoraa yhtäsuuruutta (==). Jos siis lauseessa on sana google, kuten ’Googlen kotisivu’ tai ’Googlen hakukone’, käyttäjä ohjataan edelleen Googlen etusivulle, koska hänen hakunsa sisältää sanan ’google’. Sama asia, jos käyttäjä kirjoittaa ’lm7805 jännitteen säädin’. Koska hakukysely sisältää lauseen ”LM7805”, hakukone tunnistaa tämän ja ohjaa henkilön lm7805-jännitteensäätimen sivulle.
Joten miten tämä tehdään? Yksinkertaista. Sen sijaan, että php if: n lauseke olisi suoraan yhtä suuri (==), kuten,jos ($tulos==”google”), jonka on oltava suoraan yhtä suuri, muutamme lausekkeen muotoon, jos (strpos($tulos, ”google”) == ”true”)
mitä tämä lauseke tekee on se, että se etsii hakukyselyssä lausetta ”google”. Jos kyseisen lauseen sijainti on merkkijonossa, if-lauseke on tosi; jos se on totta, voimme ohjata ne Googlen etusivulle. Tämä johtuu siitä, että niin kauan kuin ’google’ on läsnä hakukyselyssä, if-lausuma on tosi. Ja sitten alla laitamme otsikon sijainnin uudelleenohjaustoiminto.
luomme siis uuden hakusivun nimeltä searchpage2.php ja muuttaa if lausuntoja, kuten yllä, saamme tämän tiedoston, joka on esitetty alla.
nyt meillä on hakukone, joka ei vaadi suoraa merkkiottelua. Jos käyttäjä kirjoittaa ”youtube-etusivulle” tai ”youtube-videoille”, hänet ohjataan edelleen youtube-etusivulle, koska hakukysely sisältää sanan ”youtube”.
ja voit jatkaa tämän hakukoneen hiomista. Esimerkiksi, jos käyttäjä kirjoittaa ’google maps’ sen sijaan, että vain uudelleenreitittää ne google hompage, voit luoda toisen if statementthat jos tulos sisältää ’google’ ja ’maps’ ohjata käyttäjän google maps sijasta yksinkertaisesti google Kotisivu. Jos teet tämän, jos käytät samaa root lause ’google’ mutta eri luokkiin Googlen sisällä, se on parasta käyttää jos muu lausuntoja sijaan vain jos lausuntoja. Mutta se ei ole aivan välttämätöntä, jos käytät ja lausuntoja. Tämä if-lausuma näyttäisi tältä, jos ((strpos ($tulos, ”google”) == ”true”) && (strpos ($tulos, ”maps”) == ”true”))
niin alle laittaisit header location redirect-funktion, header (”Location: https://maps.google.com/”);
ja näin voi rakentaa hakukoneen, joka voi tulla yhä kehittyneemmäksi tai yhä älykkäämmäksi. Teet lisää jakoja ja if-lausuntoja. Joten jos käyttäjätyypit ’google’ ja ’finance’ samassa haussa, voit tuoda ne google finance-sivulle. Jos käyttäjä kirjoittaa samaan hakuun ’google’ ja ’kuvat’, voit tuoda ne ’google images’ – sivulle. Ja niin edelleen.
muutama pointti tästä hakusivun luomisesta.php sivu. Kun teet niin, varmista, ettei ole yhtään tilaa ennen <?php tag. Laittamalla tilaa PHP-tunnisteen väliin voi lähettää tulosteen selaimeen ja koodi ei toimi. Ennen kuin PHP voi suorittaa tämän uudelleenohjaustoiminnon, tulostetta ei voi kirjoittaa selaimeen. Ei mitään voi mennä ennen <?php-tunniste, ei edes valkoinen tila. Muuten, saat virhe, joka kertoo jotain vaikutusta, varoitus: ei voi muuttaa otsikon tiedot – otsikot jo lähetetty (lähtö alkoi /home/content/…/hakusivu.php: 1).Tämä tarkoittaa, että ennen kuin PHP suoritti uudelleenohjauksen, tuloste oli jo kirjoitettu selaimeen. Kanssa PHP header sijainti uudelleenohjaus, tämä on kielletty. Myös samasta syystä, kun tallennat hakusivun.php tiedosto, tallenna se ANSI koodaus. Älä tallenna sitä unicode -, unicode big endian-tai UTF-8-koodaukseen. Nämä koodaus voi salata ja lisätä merkkejä ennen PHP codeeven kun siellä ei ole valkoista tilaa. ANSI on puhtain koodaus, joka ei lisää merkkejä ennen <?php tag ja tämä tuottaa parhaat tulokset. Nähdäksesi syvällisemmän artikkelin tästä PHP header funktion error, katso PHP Header Location Error-Varoitus: Ei Voi Muuttaa Jo Lähetettyjä Otsikkotietoja.
näin luodaan hakukone PHP: hen.
Related Resources
How to Create Your Own Search Engine For Your Website Using PHP
How to Create a Custom Search Engine For Your Website Using PHP
How to Create a Image Search Engine For Your Website Using PHP
How to Create a video Search Engine For Your Website Using php
How to Create a Audio File Search Engine For Your Website Using PHP
How to Upload Images to a Website Using PHP
kuinka ladata tiedostoja verkkosivustolle PHP: llä
miten luoda oma File Transfer Protocol (FTP) sivustollesi PHP: llä
miten luoda vahvistus Sivu HTML-Verkkolomakkeelle PHP: llä
kuinka lisätä kuvia MySQL-tietokantaan PHP: llä
Kuinka luoda hakukelpoinen tietokanta MySQL: llä ja PHP: llä
miten etsiä MySQL-taulukosta mitä tahansa sanaa tai lausetta PHP: llä
miten luoda rekisteri-ja kirjautumissivu PHP: llä