Kuidas luua dünaamilisi veebilehti PHP

Dünaamilised internetileheküljed on tõhus viis esitada andmed kasutajale.Web designer vajab vaid luua esialgse leht, mis jagab andmed segmentideks ja lisada andmed andmebaasi, kust veebilehe juhib selle sisu.See õpetus katta kuidas luua veebilehe, mis tõmbab välja andmeid andmebaasi, luua skripti, mis jagab andmeid nii, et üks rekord on olemas iga lehe ja luua dünaamilisi linke iga dünaamiline veebileht.

, mida te vajate

  • Tekstiredaktor nagu SourceEdit
  • Dokumendi üleslaadimisel tarkvara nagu FileZilla
  • ruumi serveris
  • PHP ja MySQL installitud server
  • andmebaasi tabeli andmed ja automaatne suurendatakse ID veerus

Esialgne Web Page

  1. Tippige järgmine kood luua standard XHTML dokumendi, lisades pealkirja "Dynamic Veebilehed" & lt; title & gt; & lt; / title & gt;sildid, nagu näidatud:
    & lt;! DOCTYPE html PUBLIC "- // W3C // DTD XHTML 1.0 Transitional // EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"& gt;
    & lt; html xmlns = "http:

    //www.w3.org/1999/xhtml" xml: lang = "en" lang = "en" & gt;
    & lt; head & gt;
    & lt; title & gt; Dünaamiline Veebilehed & lt; / title & gt;
    & lt; / head & gt;
    & lt; body & gt;
    & lt; / body & gt;
    & lt; / html & gt;
    Salvesta fail kui "dynamicwebpages.php" ja laadige see server.

  2. Tippige järgmine kood kohal DOCTYPE avalduse ühendust oma andmebaasi.Asendada oma andmed koos suurte tähtedega:
    & lt;? Php
    $ DBH = mysql_connect ("SERVERINIMI", "username", "parool")
    või surra ("Ma ei saa ühendust andmebaasi, sest:". Mysql_error ());
    mysql_select_db ("databasename");
    ? & Gt;

  3. Tüüp algusest ja lõpetades PHP sildid & lt; body & gt; & lt; / body & gt;Tags:
    & lt;? php
    ? & gt;

  4. Tippige järgmine & lt;? Php? & Gt;Tags:
    $ query = mysql_query ("SELECT * FROM tabel ORDER BY id");
    while ($ r = mysql_fetch_array ($ päringu)) {
    ekstrakt ($ r);
    kaja $ muutujad;
    }
    asendusliige "tabel" nime all tabelit, et olete joonistus välja informatsiooni.Korraldada veerunimesid andmete kuvamiseks viisil oma valikul, asendades "$ muutujad" oma veerunimesid, pluss dollari märk.Sorteeri päringu poolt id valdkonnas (tulp, mis loendab sisalduvad kirjed tabelis).

  5. Salvesta ja laadige oma dokument.Leht muudab kõik andmed andmebaasis ühes suures kolonnis.

Paginating Data

  1. Tippige järgmine kood vahel teine ​​& lt;? Php tag ja valige päring:
    $ rowsPerPage = 1;
    $ pageNum = 1;
    kui (isset ($ _ GET ['lk']))
    {

    $ pageNum = $ _GET ['lk'];

    }
    $ kompenseerida = ($ pageNum - 1) * $ rowsPerPage;
    Luua muutuja nimega "$ rowsPerPage" ja pani võrdub ühe.Seda muutujat kasutatakse piirata kirjete arv andmebaasis ühe lehekülje kohta.Luua teise muutuja "$ pageNum" ja pani võrdub ühe.Loo "kui" avaldusele luua iga lehekülje number.Luua teise muutuja nimega "$ kompenseerida", et aidata muuta "vali" päringu kirjete arv lehekülje kohta.

  2. Lisa järgmine piir "vali" päringu peale "ORDER BY id" avaldusega, nagu näidatud:
    LIMIT $ kompenseerida, $ rowsPerPage

  3. Tüüp "count" päringu loendada kirjet andmebaasi, mis vastavad "vali" päringut.Määra tulemused "count" päringu muutuja "$ numrows".Luua teise muutuja "$ maxPage" ja jagada väärtus "$ numrows" poolt "$ rowsPerPage".Round tulemusi ülespoole lähima täisarvuni, mida ümbritseb jagaja koos "ceil ()" funktsiooni.
    // mitu rida on meil andmebaasis
    $ query = "SELECT COUNT (columnname) AS numrows FROM tabel ORDER BY id";
    $ tulemus = mysql_query ($ päringu) või sureb ("Viga, päringu suutnud Osa 2");
    $ rida = mysql_fetch_array ($ tulemus, MYSQL_ASSOC);
    $ numrows = $ row ['numrows "];
    // mitu lehekülge meil kasutamisel kutsungi?
    $ maxPage = ceil ($ numrows / $ rowsPerPage);

  4. Loo link igale lehele.Luua muutuja "$ ise" ja pani võrdne praeguse lehe, viidates superglobal muutuja ja selle parameetri $ _SERVER ['PHP_SELF "].Luua tühi muutuja nimega "$ nav".Loo "for" loop milles muutuja "$ lehele" võrdub ühe.Riigi et "$ leheküljel peab olema väiksem või võrdne muutuja" $ maxPage ". Seejärel pannakse leht automaatselt loota kahekordse plussmärgid. Loo" kui / else "avalduse, kus, kui väärtus" $ page "on võrdneet muutuja "$ pageNum", siis muutuja "$ nav" võrdseks muutuja "$ page". Muidu muutuja "$ nav" võrdub dünaamilise link.

    // printidalingil igal leheküljel
    $ self = $ _SERVER ['PHP_SELF "];
    $ nav =" ";
    eest ($ page = 1; $ lehele & lt; = $ maxPage; $ lehele ++)
    {
    if ($ lehele== $ pageNum)
    {

    $ nav. = "$ lehele"; // ei ole vaja luua lingi praeguse lehe

    }
    teine ​​
    {

    $ nav. = "& amp; lt; a href = \" $ise? page = $ lehekülje \ "& gt; $ lehele & amp; lt; / a & gt;"

    }
    }

  5. Loo siirtymislinkit jaoks" esilehel "," viimasel leheküljel "," järgmine rekord "link ja" eelmine rekord "lingile. Kui muutuja"$ pageNum" on suurem kui üks, luua dünaamilisi linke lehekülje number ($ lehele), "eelmine rekord" link ($ eel) ja "esimese plaadi" link ($ esimene). Kui muutuja "$ pageNum"on väärtus, mis on väiksem kui üks, ei loo link oleme leheküljel üks. Loo uus" kui / else "avalduse, mille kohaselt, kui muutuja" $ pageNum "on väiksem kui muutuja" $ maxPage "seatud muutuja "$ lehele" võrdne muutuja "$ pageNum" pluss üks. Loo dünaamiline lingid "Järgmine rekord" ja "viimasel leheküljel". Kui muutuja "$ pageNum" ei ole väiksem kuiväärtus muutuja "$ maxPage", ei loo dünaamiline lingid, sest me oleme viimasel leheküljel.
    if ($ pageNum & gt; 1)
    {
    $ page = $ pageNum - 1;
    $ eelmine = "& lt; a href = \" $ ise? Page = $ lehekülje \ "& gt; [Eelmine] & lt; / a & gt;";

    $ esimene = "& lt; a href = \" $ ise? Page = 1 \ "& gt; [esilehele] & lt; / a & gt;";
    }
    teine ​​
    {
    $ eelmine = "";// Me leheküljel üks, ei prindi lingiga
    $ esimene = "";// Ega esilehel link
    }
    if ($ pageNum & lt; $ maxPage)
    {
    $ page = $ pageNum + 1;
    $ järgmise = "& lt; a href = \" $ ise? Page = $ lehekülje \ "& gt; [Next] & lt; / a & gt;";
    $ viimase = "& lt; a href = \" $ ise? Page = $ maxPage \ "& gt; [Last Page] & lt; / a & gt;";
    }
    teine ​​
    {
    $ järgmise = "";// Me oleme viimasel leheküljel, ei prindi järgmisele lingile
    $ viimase = "";// Ega viimasel leheküljel link
    }

  6. Prindi siirtymislinkit ja sulgege ühendus andmebaasi:
    // Prindi siirtymislinkit
    kaja $ nav."& lt; br / & gt;";
    kaja $ kõrval."".$ eel."& lt; br / & gt;";
    kaja $ esimene."".$ viimane;
    // Sulgege ühendus andmebaasi
    mysql_close ();
    Selgitus:
    Siirtymislinkit ühendada originaal leht dünaamilise lehekülge loodud jagades kirjeid andmebaasi tabelisse, või ridade lehekülgedeks.Siis kõik, mis jääb on luua dünaamiline lingid iga lehe ja nende trükkimise ekraanil.

Tips & amp;Hoiatused

  • luua dünaamiline link, lisada "?"märgi lõpus faililaiend, millele järgneb "page =" ja pani võrdne kolonni andmebaasi nimega "id".Niikaua kui "vali" päringut "tellis BY" "id", siis lingid ühendada omavahel rekordi, et nad olid andmebaasi sisestatud tabel.

Resources

  • Lae FileZilla
  • Lae SourceEdit
49
0
12
Programmeerimine Keeled