php-ով դինամիկ բովանդակություն օգտագործելու ունակություն: PHP. Դինամիկ էջի ստեղծում: Նախագիծ՝ էջի գեներատոր

Վերջին թարմացումը՝ 1.11.2015թ

Այժմ մենք կստեղծենք փոքր կայք, որը նախատեսված է PHP-ի հետ աշխատելու նախնական պատկերացում կազմելու համար:

PHP-ում ծրագրեր ստեղծելու համար մեզ անհրաժեշտ է տեքստային խմբագրիչ: Այսօրվա ամենահայտնի ծրագիրը Notepad++-ն է:

Անցնենք նախկինում ստեղծված C:\localhost գրացուցակին, որը կպահի կայքի բոլոր փաստաթղթերը։ Եկեք ստեղծենք տեքստային ֆայլ և անվանենք այն index.html. Բացեք այն տեքստային խմբագրիչում և դրան ավելացրեք հետևյալ կոդը.

Առաջին կայքը PHP-ում

Մուտքագրեք ձեր տվյալները.

Մուտքագրեք ձեր անունը:

Մուտքագրեք ազգանունը.

html կոդը պարունակում է երկու տեքստային դաշտերով ձև: Երբ կոճակը սեղմվում է, ձևի տվյալները ուղարկվում են display.php սկրիպտին, ինչպես նշված է գործողության հատկանիշում:

Հիմա եկեք ստեղծենք այս սկրիպտը, որը կմշակի տվյալները։ Ավելացնել թղթապանակ c:\localhostնոր տեքստային ֆայլ: Եկեք վերանվանենք այն display.php: Լռելյայնորեն, php ծրագրի ֆայլերն ունեն ընդլայնում .php. Այսպիսով, եկեք ավելացնենք հետևյալ կոդը display.php ֆայլին.

Առաջին կայքը PHP-ում ".$name . " " . $surname . ""; ?>

Այստեղ արդեն html նշագրման մեջ կան PHP կոդի բծեր։ Թեգերը օգտագործվում են PHP արտահայտություններ էջին ավելացնելու համար, որոնց միջև կան հրահանգներ PHP լեզվով։ php կոդում մենք ստանում ենք ձևի տվյալները և ցուցադրում այն ​​էջում։

Յուրաքանչյուր առանձին PHP արտահայտություն պետք է ավարտվի ստորակետով: Այս դեպքում մենք ունենք երեք արտահայտություն. Նրանցից երկուսը ստանում են ներկայացված ձևի տվյալները, օրինակ՝ $name = $_POST["firstname"]; .

$name-ը փոփոխական է, որը որոշակի արժեք կունենա: PHP-ի բոլոր փոփոխականներին նախորդում է $ նշանը: Եվ քանի որ index.html էջի ձևն օգտագործում է POST մեթոդը ներկայացնելու համար, մենք կարող ենք օգտագործել $_POST["firstname"] արտահայտությունը, որպեսզի ստանանք այն արժեքը, որը մուտքագրվել է տեքստային դաշտում ատրիբուտ name="firstname" . Եվ այս արժեքը մտնում է $name փոփոխականի մեջ:

Echo հայտարարության միջոցով կարող եք ցուցադրել ցանկացած արժեք կամ տեքստ, որը գալիս է էջի հայտարարությունից հետո: Այս դեպքում (echo «Ձեր անունը. ".$name . " " . $surname . "«), օգտագործելով կետ, մեջբերված տեքստը միացվում է $name և $surname փոփոխականների արժեքներին և ցուցադրվում է էջում:

Այժմ անդրադառնանք մուտքագրման ձևին՝ անցնելով հասցե http://localhost:8080:

Մուտքագրեք որոշ տվյալներ և սեղմեք ուղարկել կոճակը.

Այսպիսով, սցենարը մեզ մոտ աշխատեց display.php, որը ստացել և ցուցադրել է ներկայացված տվյալները էջում։

Ինտերնետում հսկայական թվով կայքեր կան։ Այս բոլոր կայքերը կարելի է բաժանել երկու տեսակի՝ ստատիկ և դինամիկ։ Այսօր մենք կխոսենք դինամիկ էջեր ստեղծելու մասին, բայց նախ կցանկանայի ձեզ ասել, թե ինչ է ստատիկ և դինամիկ կայքը (էջը):

Ստատիկ կայքեր

Ստատիկ կայքերը կազմված են ստատիկ վեբ էջերից: Սա նշանակում է, որ անկախ նրանից, թե ինչ է անում օգտատերը, էջը միշտ նույն տեսքն ունի։ Նման էջերը պահվում են սերվերում որպես HTML փաստաթղթեր։ դիմահարդարել ստատիկ էջերձեռքով։ Եթե ​​Ձեզ անհրաժեշտ է փոխել էջի բովանդակությունը, ապա դուք պետք է խմբագրեք յուրաքանչյուր էջի HTML կոդը:

Առավելությունները:

  • Ստեղծման պարզությունն ու էժանությունը, ապարատային ռեսուրսների համար ոչ պահանջկոտ;

Թերություններ:

  • Բովանդակության խմբագրման վրա ծախսված մեծ ժամանակ;
  • Հարմար չէ խոշոր նախագծերի համար:

Դինամիկ կայքեր

Դինամիկ կայքերը բաղկացած են դինամիկ վեբ էջերից, որոնք կարող են արձագանքել օգտվողի գործողություններին և փոփոխություններին: Նման էջերը ձևավորվում են վեբ սերվերի կողմից մի քանի ֆայլերից (կաղապարներից): Ամբողջ տեղեկատվությունը պահվում է տվյալների բազայում: Երբ օգտատերը պահանջում է էջ, համապատասխան տեղեկատվությունը վերցվում է տվյալների բազայից, տեղադրվում է ձևանմուշում՝ վեբ էջը ձևավորելու համար և վեբ սերվերի կողմից ուղարկվում է օգտագործողի բրաուզերին: Այսպիսով, կայքի բովանդակությունը թարմացնելիս պարզապես անհրաժեշտ է ավելացնել նոր էջի տեքստը, որն այնուհետև տեղադրվում է տվյալների բազա՝ օգտագործելով որոշակի մեխանիզմ։

Առավելությունները:

  • Բովանդակության կառավարումն իրականացվում է հատուկ ձևաթղթերի միջոցով, որտեղ կարելի է հեշտությամբ ավելացնել, խմբագրել և ջնջել տեղեկատվությունը;
  • Կայքում նոր բովանդակություն ավելացնելիս առավելագույն արդյունավետություն;
  • Բովանդակություն ավելացնելիս կամ խմբագրելիս վեբ վարպետության (HTML, CSS) հատուկ գիտելիքներ չեն պահանջվում.
  • Մեծ բազմաֆունկցիոնալ նախագծեր ստեղծելու ունակություն;
  • Առաջխաղացման մեծ հնարավորություններ.

Թերություններ:

  • Ստեղծման և պահպանման բարձր արժեքը;
  • Կայքի աշխատանքը պահպանելու համար անհրաժեշտ է ունենալ համապատասխան գիտելիքներ:

Հիմա կարծում եմ, որ դուք հասկանում եք, որ ամենալավն է կայք ստեղծել՝ օգտագործելով դինամիկ էջեր։ դա լավագույն և հարմար ընտրությունն է։ Դե, հիմա խոսենք դինամիկ էջեր ստեղծելու մասին։

Պարզ Հղումներ

Մինչև PHP լեզուն սովորելը, կարծում եմ, դուք պետք է արդեն տիրապետեք HTML-ին և իհարկե ստեղծել հիպերհղումներ։ Ես ուզում եմ ձեզ հիշեցնել.

$link = "example.php"; տպել»<а href = \"$link\">Դինամիկ հիպերհղման օրինակ:
\n"

Ահա թե որքան հեշտ է ստեղծել դինամիկ հիպերհղում, օգտագործելով php լեզուն:

Դինամիկ էջի ստեղծման գործընթացը

Դինամիկ էջի ստեղծման գործընթացը բաղկացած է մի քանի փուլից.

Էջի շրջանակի տեղադրում: Եկեք էջն անվանենք index.php - այն բաղկացած կլինի մասերից՝ վերնագիր (վերնագիր), ստորագիր (էջատակ), ձախ մենյու(ձախ մենյու): Այս օրինակում ես ցույց կտամ, թե ինչպես է դրված աղյուսակի վրա հիմնված էջը, բայց դուք կարող եք նաև օգտագործել բլոկ վերստ:

1. Ֆայլի ձևավորում header.php.

Դինամիկ էջ PHP-ում.

Կայքի վերնագիր


2. Մենք ֆայլ ենք կազմում leftmenu.php.

  • Հղում 1
  • Հղում 2
  • Հղում 3
  • Հղում 4
  • Հղում 5

3. Մենք ֆայլ ենք կազմում footer.php.

Կայքի ստորագիր


Ստեղծեք թղթապանակ, որը կոչվում է կաղապարորի վրա կպատճենեք ստացված ֆայլերը: Եթե ​​Ձեզ անհրաժեշտ է խմբագրել կայքի վերնագիրը, ձախ ընտրացանկը կամ ստորագիրը, կիմանաք, որ կայքի այս մասերի կաղապարները գտնվում են այս թղթապանակում։

Ստացված ֆայլերը (շաբլոնները) միացնենք կայքին՝ օգտագործելով index.php էջի օրինակում ներառված դրույթը։

Բարեւ Ձեզ!

Սա PHP-ի առաջին դինամիկ էջն է:

Այսպես index.php էջը դինամիկ էջ է, այն կձևավորվի մի քանի ֆայլերից (կաղապարներից)։ Դուք կարող եք պատրաստել ցանկացած քանակությամբ նման կաղապարներ: Եթե ​​Ձեզ անհրաժեշտ է փոխել կայքի որևէ հատված, պարզապես գտեք ցանկալի կաղապարի ֆայլը և խմբագրեք այն:

Սա ավարտում է դինամիկ էջերի ստեղծումը: Կարծում եմ դուք հասկանում եք դինամիկ կայքերի իմաստն ու գործնականությունը և իմ օրինակի հիման վրա կարող եք ստեղծել մեծ նախագիծ։ Եվ մի մոռացեք մեկնաբանել ձեր կոդը. դա շատ կարևոր է ընկերներ: Հաջողություն քեզ!

P.S. Փոքր փոփոխություններ 07/06/2019-ից.

Քանի որ ծրագրավորումը միշտ զարգանում է, հետևաբար, այն պետք է զարգանա լույսի արագությամբ: Վերևում ներկայացված աղյուսակային դասավորությունը մեր օրերում քիչ է օգտագործվում պրակտիկայում և անհրաժեշտ է միայն սկսնակ ծրագրավորողների ուսումնասիրության համար:

Եթե ​​ցանկանում եք ստեղծել նոր և արդյունավետ կայքեր, ապա խորհուրդ ենք տալիս օգտագործել բլոկների դասավորությունը աղյուսակային դասավորության փոխարեն: Դիտարկենք ավելի մանրամասն:

Աղյուսակները ստեղծվել են հատուկ աղյուսակային տվյալները ցուցադրելու համար, այլ ոչ էջի տարրերը նշելու համար: Ինչ է աղյուսակում.

տեքստը

կարող է ներկայացվել որպես բլոկի (div) դասավորություն.

տեքստը

այն շատ ավելի քիչ տարածություն է վերցնում սկավառակի վրա:

Հաշվի առեք բլոկի դասավորության առավելությունները աղյուսակի համեմատ.

  1. Էջի չափի զգալի կրճատում, սովորաբար 2-3 անգամ, ինչը զգալիորեն նվազեցնում է կայքի բեռնման ժամանակը։ Միևնույն ժամանակ, ֆայլի չափը մի փոքր կավելանա, բայց այն պատճառով, որ այն մեկ անգամ պահվում է օգտատիրոջ զննարկչի կողմից և կարդացվում է նրա համակարգչից այլ էջեր մուտք գործելու ժամանակ, արդյունքում կայքը բեռնվում է շատ ավելի արագ, քան աղյուսակային մեկը։
  2. Շատ ավելի հարմար է փոխել կայքի էջերի դիզայնը՝ CSS ֆայլում ներկայացված։ Այս դեպքում, գործնականում կարիք չկա խմբագրել -code-ը։
  3. Բլոկի դասավորության հնարավորությունների շնորհիվ հնարավոր է ապահովել, որ էջի հիմնական բովանդակությունը նախ կոդում է, և միայն դրանից հետո վերնագիրը, ձախ և/կամ աջ սյունակները: Որտեղ տեսքըԷջն ընդհանրապես չի փոխվի։
  4. Բլոկի էջի կոդի թափանցիկությունը տեսողականորեն հաճելի է. պիտակների կույտեր չկան, ամեն ինչ շատ գեղեցիկ է և կոմպակտ:

Բարեւ Ձեզ! Այժմ մենք կփորձենք իրականացնել ամենապարզ գրանցումը կայքում՝ օգտագործելով PHP + MySQL: Դա անելու համար Apache-ը պետք է տեղադրված լինի ձեր համակարգչում: Ինչպես է աշխատում մեր սցենարը, ներկայացված է ստորև:

1. Սկսենք ստեղծելով օգտվողների աղյուսակը տվյալների բազայում. Այն կպարունակի օգտվողի տվյալներ (մուտք և գաղտնաբառ): Եկեք գնանք phpmyadmin (եթե ձեր համակարգչի վրա տվյալների բազա եք ստեղծում http://localhost/phpmyadmin/) Ստեղծեք աղյուսակ օգտվողներ, այն կունենա 3 դաշտ։

Ես այն ստեղծում եմ mysql տվյալների բազայում, դուք կարող եք այն ստեղծել այլ տվյալների բազայում: Հաջորդը, սահմանեք արժեքները, ինչպես նկարում.

2. Պահանջվում է միացում այս աղյուսակին:Եկեք ստեղծենք ֆայլ bd.php. Դրա բովանդակությունը.

$db = mysql_connect («ձեր MySQL սերվերը», «մուտք գործել այս սերվերում», «գաղտնաբառ այս սերվերի համար»);
mysql_select_db («տվյալների բազայի անվանումը, որին պետք է միանալ», $db);
?>

Իմ դեպքում դա այսպիսի տեսք ունի.

$db = mysql_connect ("localhost", "user", "1234");
mysql_select_db ("mysql",$db);
?>

Մենք խնայում ենք bd.php.
Հիանալի Տվյալների բազայում ունենք աղյուսակ, դրա հետ կապ: Այժմ դուք կարող եք սկսել ստեղծել էջ, որտեղ օգտվողները կթողնեն իրենց տվյալները:

3. Ստեղծեք reg.php ֆայլ բովանդակությամբ (բոլոր մեկնաբանությունները ներսում).



Գրանցում


Գրանցում
















4. Ստեղծեք ֆայլ, որը տվյալների բազա կմտնի և կփրկի օգտատիրոջը: save_user.php(մեկնաբանությունները ներսում):



{
}
//եթե մուտքն ու գաղտնաբառը մուտքագրված են, ապա մենք դրանք մշակում ենք, որպեսզի պիտակները և սկրիպտները չաշխատեն, երբեք չգիտես, թե մարդիկ ինչ կարող են մուտքագրել


// հեռացնել ավելորդ բացատները
$login = trim ($login);
$գաղտնաբառ = կտրել ($գաղտնաբառ);
// միանալ տվյալների շտեմարանին
// ստուգեք նույն մուտքով օգտվողի առկայությունը
$result = mysql_query("SELECT id FROM users WHERE login="$login"",$db);
եթե (!empty($myrow["id"])) (
exit («Կներեք, ձեր մուտքագրած օգտանունն արդեն գրանցված է: Խնդրում ենք մուտքագրել այլ օգտվողի անուն:»);
}
// եթե չկա, ապա պահպանեք տվյալները
$result2 = mysql_query ("INSERT INTO users (login, password) VALUES ("$login","$password")");
// Ստուգեք, արդյոք սխալներ կան
եթե ($result2=="TRUE")
{
echo «Դուք հաջողությամբ գրանցվել եք: Այժմ կարող եք մուտք գործել կայք: Գլխավոր էջ»;
}
ուրիշ (
echo «Սխալ: Դուք մուտք չեք գործել»:;
}
?>

5. Այժմ մեր օգտվողները կարող են գրանցվել:Հաջորդը, դուք պետք է «դուռ» սարքեք, որպեսզի մուտք գործեք կայք արդեն գրանցված օգտվողների համար: index.php(մեկնաբանությունները ներսում):

// ամբողջ պրոցեդուրան աշխատում է նիստերի վրա։ Հենց դրա մեջ են պահվում օգտատիրոջ տվյալները, քանի դեռ նա գտնվում է կայքում։ Շատ կարևոր է դրանք գործարկել հենց էջի սկզբում!!!
նիստ_սկիզբ ();
?>


<a href="https://lineagers.ru/hy/windows-xp/pereiti-na-glavnuyu-stranicu-yandeks-chto-takoe-yandeks-pochemu-on.html">Հիմնական էջ</a>


Հիմնական էջ











Գրանցվել



// Ստուգեք՝ արդյոք մուտքի և օգտագործողի id փոփոխականները դատարկ են
եթե (դատարկ ($_SESSION["մուտք"]) կամ դատարկ ($_SESSION["id"]))
{
// Եթե դատարկ է, մենք չենք ցուցադրում հղումը
echo «Դուք մուտք եք գործել որպես հյուր
Այս հղումը հասանելի է միայն գրանցված օգտվողներին»;
}
ուրիշ
{

Ֆայլում index.phpմենք կցուցադրենք հղում, որը բաց կլինի միայն գրանցված օգտատերերի համար: Սա է սցենարի ողջ իմաստը` սահմանափակել մուտքը ցանկացած տվյալների:

6. Մուտքագրված մուտքի և գաղտնաբառի ստուգմամբ ֆայլ կա: testreg.php (մեկնաբանություններ ներսում):

session_start();// ամբողջ պրոցեդուրան աշխատում է նիստերի վրա: Հենց դրա մեջ են պահվում օգտատիրոջ տվյալները, քանի դեռ նա գտնվում է կայքում։ Շատ կարևոր է դրանք գործարկել հենց էջի սկզբում!!!
if (isset($_POST["login"])) ($login = $_POST["login"]; if ($login == "") ( unset($login);) ) //դրել մուտքագրված մուտքը օգտվողին $login փոփոխականի մեջ, եթե այն դատարկ է, ապա մենք ոչնչացնում ենք փոփոխականը
if (isset($_POST["password"])) ($password=$_POST["password"]; if ($password =="") ( unset($password);) )
//օգտագործողի մուտքագրած գաղտնաբառը դրեք $password փոփոխականի մեջ, եթե այն դատարկ է, ապա ոչնչացրեք փոփոխականը
եթե (դատարկ ($login) կամ դատարկ ($password)) //եթե օգտատերը չի մուտքագրել մուտք կամ գաղտնաբառ, ապա մենք սխալ ենք թույլ տալիս և դադարեցնում սկրիպտը
{
exit («Դուք չեք մուտքագրել ամբողջ տեղեկատվությունը, վերադարձեք և լրացրեք բոլոր դաշտերը»);
}
//եթե մուտքն ու գաղտնաբառը մուտքագրված են, ապա մենք դրանք մշակում ենք, որպեսզի պիտակները և սկրիպտները չաշխատեն, երբեք չգիտես, թե մարդիկ ինչ կարող են մուտքագրել
$login = stripslashes ($login);
$login = htmlspecialchars ($login);
$password = stripslashes ($password);
$password = htmlspecialchars ($password);
// հեռացնել ավելորդ բացատները
$login = trim ($login);
$գաղտնաբառ = կտրել ($գաղտնաբառ);
// միանալ տվյալների շտեմարանին
include("bd.php");// bd.php ֆայլը պետք է լինի նույն թղթապանակում, ինչ բոլորը, եթե ոչ, ապա պարզապես փոխեք ուղին

$result = mysql_query("SELECT * FROM users WHERE login="$login"",$db); //առբերել օգտագործողի մասին բոլոր տվյալները տվյալների բազայից մուտքագրված մուտքով
$myrow = mysql_fetch_array ($ արդյունք);
եթե (դատարկ ($myrow["password"]))
{
//եթե մուտքագրված լոգինով օգտվողը գոյություն չունի
}
ուրիշ (
//եթե կա, ստուգեք գաղտնաբառերը
եթե ($myrow["password"]==$password) (
//եթե գաղտնաբառերը համընկնում են, ապա մենք սկսում ենք սեսիան օգտագործողի համար: Կարող եք շնորհավորել, նա մտավ։
$_SESSION["login"]=$myrow["login"];
$_SESSION["id"]=$myrow["id"];//այս տվյալները շատ հաճախ են օգտագործվում, ուստի մուտք գործած օգտվողը դրանք «կտրի»
echo «Դուք հաջողությամբ մուտք եք գործել կայք: Գլխավոր էջ»;
}
ուրիշ (
//եթե գաղտնաբառերը չեն համընկնում

Ելք («Կներեք, ձեր մուտքագրած մուտքը կամ գաղտնաբառը սխալ է»);
}
}
?>

Լավ, հիմա ամեն ինչ ավարտված է: Գուցե դասը ձանձրալի է, բայց շատ օգտակար: Այստեղ ցուցադրվում է միայն գրանցման գաղափարը, այնուհետև կարող եք բարելավել այն. ավելացնել պաշտպանություն, դիզայն, տվյալների դաշտեր, վերբեռնել ավատարներ, դուրս գալ ձեր հաշվից (դրա համար պարզապես ոչնչացնել փոփոխականները նիստից գործառույթով չկարգավորված) և այլն։ Հաջողություն!

Ստուգել եմ ամեն ինչ, լավ է աշխատում:

Ստեղծեք hello.php անունով ֆայլ վեբ սերվերի արմատական ​​գրացուցակում (DOCUMENT_ROOT) և դրանում գրեք հետևյալը.

Օրինակ #1 Առաջին PHP սկրիպտը՝ hello.php



PHP-ի փորձարկում


"

Բարեւ աշխարհ!

" ; ?>

Բացեք այս ֆայլը բրաուզերում՝ մուտքագրելով ձեր վեբ սերվերի անունը և /բարև.php. Տեղական զարգացման ժամանակ այս հղումը կարող է նման լինել http://localhost/hello.phpկամ http://127.0.0.1/hello.php, բայց դա կախված է ձեր սերվերի կարգավորումներից: Եթե ​​ամեն ինչ ճիշտ կազմաձևված է, այս ֆայլը կմշակվի PHP-ի կողմից և զննարկիչը կցուցադրի հետևյալ տեքստը.

PHP թեստ

Բարեւ աշխարհ

Այս ծրագիրը չափազանց պարզ է, և նման պարզ էջ ստեղծելու համար նույնիսկ կարիք չկա օգտագործել PHP: Այն ամենը, ինչ նա անում է, եզրակացություն է Բարեւ աշխարհօգտագործելով PHP հայտարարություն արձագանք. Խնդրում ենք նկատի ունենալ, որ ֆայլը պարտադիր չէ, որ գործարկելի լինիկամ այլ կերպ տարբերվում է այլ ֆայլերից: Սերվերը գիտի, որ այս ֆայլը պետք է մշակվի PHP-ի կողմից, քանի որ ֆայլն ունի «.php» ընդլայնում, որը սերվերի կարգավորումների համաձայն՝ նման ֆայլերը պետք է փոխանցվեն PHP-ին: Մտածեք դրա մասին սովորական HTML ֆայլի նման, որը բախտ է վիճակվել ունենալ հատուկ պիտակների մի շարք (ձեզ նույնպես հասանելի), որոնք կարող են շատ հետաքրքիր բաներ անել:

Եթե ​​այս օրինակը ձեզ համար ոչինչ չի ցուցադրում կամ ցուցադրում է ներբեռնման պատուհան, կամ եթե այս ամբողջ ֆայլը տեսնում եք տեքստային ձևով, ապա, ամենայն հավանականությամբ, ձեր վեբ սերվերը չունի PHP աջակցություն կամ սխալ է կազմաձևվել: Խնդրեք ձեր սերվերի ադմինիստրատորին միացնել այս աջակցությունը: Առաջարկեք նրան տեղադրման հրահանգներ. այս փաստաթղթերի Տեղադրման բաժինը: Եթե ​​դուք մշակում եք PHP սկրիպտներ տանը (տեղական), ապա կարդացեք նաև այս գլուխը՝ համոզվելու համար, որ ամեն ինչ ճիշտ եք կարգավորել: Նաև համոզվեք, որ ֆայլը պահանջում եք սերվերից http արձանագրության միջոցով: Եթե ​​դուք պարզապես բացեք ֆայլը ձեր ֆայլային համակարգ, այն չի մշակվի PHP-ի կողմից: Եթե ​​խնդիրները դեռ շարունակվում են, ազատ զգալ օգնություն խնդրեք PHP-ի աջակցման անդորրագրերից մեկից:

Օրինակի նպատակն է ցույց տալ PHP հատուկ պիտակների ձևաչափը։ Այս օրինակում մենք օգտագործեցինք որպես բացման պիտակ, որին հաջորդում են PHP հրամանները, որոնք ավարտվում են փակման պիտակով ?> . Այսպիսով, դուք կարող եք «ցատկել» և «ցատկել» ցանկացած վայրում՝ սկսած PHP ռեժիմից մինչև HTML ֆայլ. Այս մասին ավելին կարող եք կարդալ ձեռնարկի Հիմնական շարահյուսություն բաժնում:

Մեկնաբանություն: Նշում նոր տողերի մասին

Տողերի ընդհատումները HTML-ում քիչ նշանակություն ունեն, բայց լավ գաղափար է HTML-ը ընթեռնելի պահել՝ այն փաթաթելով նոր տողի վրա: PHP-ն ավտոմատ կերպով հեռացնում է նոր տողերը վերջի պիտակից անմիջապես հետո ?> . Սա կարող է չափազանց օգտակար լինել, եթե դուք օգտագործում եք PHP կոդի բազմաթիվ բլոկներ կամ ներառում եք PHP ֆայլեր, որոնք ոչինչ չպետք է թողարկեն: Միևնույն ժամանակ, դա կարող է շփոթեցնել: Դուք կարող եք բացատ տեղադրել փակման պիտակից հետո ?> և այնուհետև նոր տողի հետ մեկտեղ բաց կթողարկվի, կամ կարող եք հատուկ նոր տող ավելացնել վերջին echo/print զանգին PHP կոդի բլոկից:

Մեկնաբանություն: Մի քանի խոսք տեքստային խմբագրիչների մասին

Կան բազմաթիվ տեքստային խմբագրիչներ և ինտեգրված զարգացման միջավայրեր (IDE), որտեղ դուք կարող եք ստեղծել և խմբագրել PHP ֆայլեր: Որոշ խմբագիրների ցանկի համար տե՛ս » PHP խմբագիրների ցանկը: Եթե ​​ցանկանում եք խմբագիր խորհուրդ տալ, այցելեք այս էջը և խնդրեք, որ խմբագիր ավելացվի ցանկին: Շարահյուսական ընդգծմամբ խմբագրի օգտագործումը կարող է մեծ օգնություն լինել ձեր աշխատանքին:

Մեկնաբանություն: Մի քանի խոսք բառային պրոցեսորների մասին

Բառի պրոցեսորներ (StarOffice Writer, Microsoft Word, Abiword և այլն) շատ դեպքերում հարմար չեն խմբագրման համար PHP ֆայլեր. Եթե ​​դեռ ցանկանում եք օգտագործել դրանցից որևէ մեկը ձեր թեստային սցենարի համար, համոզվեք, որ ֆայլը պահել եք որպես պարզ տեքստ(պարզ տեքստ), հակառակ դեպքում PHP-ն չի կարողանա կարդալ և գործարկել ձեր սցենարը:

Մեկնաբանություն: Մի քանի խոսք Windows Notepad-ի մասին

Ներկառուցված Windows Notepad-ի միջոցով PHP սկրիպտներ գրելիս դուք պետք է պահեք ֆայլեր .php ընդլայնմամբ: (Նոթատետրը ավտոմատ կերպով կավելացնի .txt ընդլայնումը, եթե չանեք հետևյալ քայլերը:) Երբ ֆայլը պահելու ժամանակ ֆայլի անունը հուշում են, ֆայլի անունը գրեք կրկնակի չակերտներով (օրինակ՝ «hello.php»): Բացի այդ, դուք կարող եք սեղմել բացվող ցանկի վրա « Տեքստային փաստաթղթերՊահպանման ֆայլի երկխոսության վանդակում և դրա մեջ ընտրեք «Բոլոր ֆայլերը»: Դրանից հետո կարող եք մուտքագրել ֆայլի անունը առանց չակերտների:

Այժմ, երբ դուք հաջողությամբ ստեղծեցիք գործող PHP սկրիպտը, ժամանակն է ստեղծելու երբևէ եղած ամենահայտնի PHP սկրիպտը: Կանչել ֆունկցիա phpinfo ()և դուք կտեսնեք շատ օգտակար տեղեկատվություն ձեր համակարգի և կարգավորումների մասին, ինչպիսիք են մատչելի կանխորոշված ​​փոփոխականները, բեռնված PHP մոդուլները և տեղադրման ընտրանքները: Որոշ ժամանակ տրամադրեք այս կարևոր տեղեկատվությունը ուսումնասիրելու համար:

Օրինակ #2 PHP-ից համակարգի տեղեկատվության ստացում

Համակարգիչների մասին ցանկացած գրքի շատ ընթերցողներ կանցնեն այն ամենի միջով, ինչը անմիջական հետաքրքրություն չի ներկայացնում և կանցնեն այն, ինչ նրանք իրականում ունեն: ուզումիմանալ. Անձամբ ես հենց այդպես էլ անում եմ։ Այնուամենայնիվ, անհանգստանալու ոչինչ չկա. հազվադեպ են լինում տեխնիկական գրքեր, որոնք կարիք ունեն կարդալու էջից գլուխ: Կամ գուցե դուք հենց դա արեցիք՝ բաց թողեցիք ութ սկզբնական գլուխները և անցաք այս գլուխը, քանի որ այն ուներ ամենահետաքրքիր վերնագիրը: Իսկ ո՞վ է ուզում ժամանակ վատնել մանրամասների վրա, երբ մեկ այլ նախագիծ է այրվում:

Բարեբախտաբար, այս շտապողականությունը ձեզ չի խանգարի ծանոթանալ գրքի երկրորդ մասի վրա, որը վերաբերում է PHP-ի օգտագործմանը վեբ կայքեր ստեղծելու և համացանցի հետ փոխգործակցության համար: Այս գլխում դուք կսովորեք, թե ինչպես հեշտությամբ փոփոխել վեբ էջերի բովանդակությունը և նավարկել համացանցում՝ օգտագործելով հղումներ և տարբեր ստանդարտ գործառույթներ: Հաջորդ գլուխը կլրացնի ներկայացված նյութը. այն մանրամասնորեն քննարկում է HTML ձևերով օգտատերերի փոխազդեցության միջոցները: Գլուխ 11-ը նկարագրում է տվյալների բազաների հետ ինտերֆեյսի կազմակերպումը: 2-րդ մասի մնացած գլուխները ներառում են PHP-ում վեբ ծրագրավորման ոչ տրիվիալ ասպեկտները:

Այնուամենայնիվ, պետք է հիշել, որ 1-ին մասի նյութը բացարձակապես էական PHP-ի նորմալ իմացության համար։ Ենթադրվում է, որ դուք կարդացել եք առաջին մասը, ուստի օրինակները կօգտագործեն ավելի վաղ քննարկված հասկացություններից շատերը: Այսպիսով, եթե դուք թերթել եք գրքի մի մասը, դուք պետք է ժամանակ առ ժամանակ վերադառնաք նախորդ գլուխներին և հասնեք:

Պարզ Հղումներ

<а href = "date.php">

$link = "date.php";

տպել»<а href = \"$link\">Դիտեք այսօրվա ամսաթիվը
\n"

Ձեզ կարող է հետաքրքրել, թե ինչու է հղման կոդի մեջ չակերտներից առաջ (\) նշանը: Դա պայմանավորված է նրանով, որ չակերտները հատուկ նիշեր են PHP-ում և օգտագործվում են որպես տողերի սահմանազատիչներ: Հետևաբար, չակերտները տողերի բառացի տողեր են: Պետք է պաշտպանված լինեն: .

Եթե ​​չակերտներից խուսափելու անհրաժեշտությունը ձեզ զայրացնում է, պարզապես միացրեք magic_quotes_gpc ռեժիմը ձեր php.ini ֆայլում: Արդյունքն այն է, որ բոլոր ապոստրոֆները, մեջբերումները, հետադարձ շեղերը և զրոյական նիշերը: ավտոմատ կերպով փախչում են տեքստում:

Մշակենք բերված օրինակը։ Բրաուզերում հղումների ցանկն արագ ցուցադրելու համար կարող եք օգտագործել զանգված.

// Ստեղծել բաժինների զանգված

$contents - array("tutorials", " articles", "scripts", "contact");

// Անցեք և հաջորդաբար դուրս բերեք զանգվածի յուրաքանչյուր տարր

համար ($i = 0; $i< sizeof($contents; $i++)

տպել» «.$contents[$i]»:
\n";

// - նշիչ կետի հատուկ նշանակում endfor;

Ֆայլի բաղադրիչներ (կաղապարներ)

Մենք հասել ենք իմ սիրելի PHP-ի հնարավորություններից մեկին: Կաղապարը (ինչպես կիրառվում է վեբ ծրագրավորման համար) վեբ փաստաթղթի մի մասն է, որը դուք պատրաստվում եք օգտագործել մի քանի էջերում: Կաղապարները, ինչպես PHP ֆունկցիաները, ձեզ կփրկեն էջի բովանդակության և ծրագրի կոդի հատվածները պատճենելու/տեղադրելու դժվարություններից: Կայքի մասշտաբների մեծացման հետ կաղապարների նշանակությունը մեծանում է, քանի որ դրանք թույլ են տալիս հեշտությամբ և արագ փոփոխություններ կատարել ամբողջ կայքի մակարդակով։ Այս բաժինը նկարագրելու է որոշ հնարավորություններ, որոնք բացվում են ամենապարզ ձևանմուշների օգտագործման ժամանակ:

Սովորաբար, բովանդակության/կոդերի ընդհանուր մասերը (այսինքն՝ ձևանմուշները) պահվում են առանձին ֆայլերում: Վեբ փաստաթուղթ կառուցելիս դուք պարզապես «ներառում» եք այս ֆայլերը էջի համապատասխան վայրերում։ PHP-ն ունի երկու գործառույթ դրա համար՝ include() և require().

ներառել() և պահանջել()

PHP-ի ամենաակնառու ասպեկտներից մեկը ձևանմուշներ և ծրագրավորման գրադարաններ ստեղծելու, այնուհետև դրանք նոր սկրիպտներում տեղադրելու կարողությունն է: Գրադարանների օգտագործումը խնայում է ժամանակն ու ջանքը՝ օգտագործելու ընդհանուր ֆունկցիոնալությունը տարբեր կայքերում: Ընթերցողների հետ

ծրագրավորման փորձ այլ լեզուներով (օրինակ՝ C, C++ կամ Java), ֆունկցիոնալ գրադարանների հայեցակարգի հետ ծանոթություն և դրանց օգտագործումը ծրագրերում՝ ֆունկցիոնալությունը ընդլայնելու համար:

Մեկ կամ մի քանի ֆայլ սկրիպտում ներառելը կատարվում է PHP-ի ստանդարտ պահանջի () և include() ֆունկցիաների միջոցով: Ինչպես կցուցադրվի հաջորդ բաժնում, այս գործառույթներից յուրաքանչյուրն օգտագործվում է կոնկրետ իրավիճակում:

Գործառույթներ

PHP-ն ունի չորս գործառույթ՝ PHP սկրիպտներում ֆայլեր ներառելու համար.

  • ներառում();
  • ներառել_մեկ անգամ ();
  • պահանջում ();
  • պահանջ_մեկ անգամ ().

Չնայած անունների նմանությանը, այս գործառույթները կատարում են տարբեր առաջադրանքներ:

Include() ֆունկցիան ներառում է սկրիպտի ֆայլի բովանդակությունը: Include() ֆունկցիայի շարահյուսությունը հետևյալն է.

ներառել (ֆայլի ֆայլ)

Include() ֆունկցիան ունի մեկ հետաքրքիր հատկություն՝ այն կարելի է պայմանականորեն կատարել։ Օրինակ, եթե ֆունկցիայի կանչը ներառված է if հայտարարությունների բլոկում: ապա ֆայլը ներառվում է ծրագրում միայն այն դեպքում, եթե i f պայմանը ճիշտ է: Եթե ​​includeO ֆունկցիան օգտագործվում է պայմանական հրամանում, ապա այն պետք էփակված լինի գանգուր ամրացումներով կամ այլընտրանքային սահմանազատիչներով: Համեմատեք շարահյուսական տարբերությունները 9.1 և 9.2 ցուցակներում:

Ցուցակ 9.1. include()-ի սխալ օգտագործումը

եթե (որոշ_պայմանական)

ներառել ("text91a.txt"); ուրիշ

ներառել ("text91b.txt");

Ցուցակ 9.2. Inc-ի ճիշտ օգտագործումը ()

եթե (որոշ_պայմանական) :

ներառել ("text91a.txt");

ներառել ("text91b.txt");

Ներառյալ ֆայլի ամբողջ PHP կոդը Պարտադիրգտնվում է PHP թեգերում: Մի ենթադրեք, որ պարզապես PHP հրամանը ֆայլում պահելը կապահովի, որ այն ճիշտ մշակվի.

Փոխարենը, դուք պետք է կցեք հրամանը համապատասխան պիտակներում, ինչպես ցույց է տրված հետևյալ օրինակում.

տպել «սա անվավեր ներառման ֆայլ է»;

Include_once() ֆունկցիան անում է նույնը, ինչ ներառել(), մեկ բացառությամբ. այն ստուգում է, թե արդյոք ֆայլն արդեն ներառված է, նախքան ծրագրում ներառելը: Եթե ​​ֆայլն արդեն ներառված է, ապա include_once() զանգը անտեսվում է, իսկ եթե ոչ, ֆայլը ներառված է լռելյայն: Բոլոր մյուս առումներով, include_once()-ը չի տարբերվում include(-ից): Include_once() ֆունկցիայի շարահյուսությունը հետևյալն է.

include_once (ֆայլի ֆայլ)

Ընդհանուր առմամբ, require() ֆունկցիան նման է include()-ին. այն նաև ներառում է ձևանմուշը ֆայլում, որը պարունակում է կանչը պահանջել(): Require() ֆունկցիայի շարահյուսությունը հետևյալն է.

պահանջում (ֆայլի ֆայլ)

Այնուամենայնիվ, կա մեկ կարևոր տարբերություն պահանջ() և include() ֆունկցիաների միջև։ Պահանջում() պարամետրով նշված ֆայլը ներառված է սկրիպտում՝ անկախ սկրիպտում require()-ի գտնվելու վայրից: Օրինակ, եթե դուք կանչում եք requirere() if block-ում կեղծ պայմանով, ֆայլը դեռ կներառվի սկրիպտում:

Շատ իրավիճակներում հարմար է ֆայլ ստեղծել փոփոխականներով և այլ տեղեկություններով, որոնք օգտագործվում են կայքում, և այնուհետև այն ներառել ըստ անհրաժեշտության: Չնայած այս ֆայլի անունը կամայական է, ես սովորաբար այն անվանում եմ init.tpl («initializaion.template» բառի կրճատում): 9.3 ցուցակը ցույց է տալիս, թե ինչ տեսք ունի շատ պարզ init.tpl ֆայլը: Ցուցակ 9-4-ում init.tpl-ի բովանդակությունը ներառված է սկրիպտի մեջ` require() հրամանով:

Ցուցակ 9.3. Նախնականացման ֆայլի օրինակ

$site_title = «PHP բաղադրատոմսեր";!}

$contact_email = " [էլփոստը պաշտպանված է]";

$contact_name = «WJ Gilmore»;

Ցուցակ 9.4. Օգտագործելով init.tpl ֆայլը

<? print $site_title; ?>

\"mai1 to:$contact_email\">$contact_name."; ?>

Անհրաժեշտ() զանգահարելիս URL փոխանցելը թույլատրվում է միայն այն դեպքում, եթե «URL fopen wrappers» ռեժիմը միացված է (այս ռեժիմը լռելյայն միացված է):

Քանի որ կայքի չափը մեծանում է, կարող է պատահել, որ որոշ ֆայլեր ներառված են սկրիպտում մեկից ավելի անգամ: Երբեմն դա խնդիրներ չի առաջացնում, բայց որոշ դեպքերում ֆայլը կրկին ակտիվացնելը վերակայում է փոփոխված փոփոխականները: Եթե ​​գործառույթները սահմանված են ներառող ֆայլում, անունների կոնֆլիկտները կարող են առաջանալ: Այս ասելով մենք գալիս ենք հաջորդ ֆունկցիային` require_once():

Require_once() ֆունկցիան ապահովում է, որ ֆայլը միայն մեկ անգամ կներառվի սկրիպտում: Requi re_onse()-ին կանչելուց հետո նույն ֆայլը ներառելու հետագա բոլոր փորձերն անտեսվում են: Require_onse() ֆունկցիայի շարահյուսությունը հետևյալն է.

Դուք, հավանաբար, ավելի հաճախ կօգտագործեք ֆայլի ֆունկցիոնալությունը, քանի որ ձեր վեբ հավելվածները մեծանում են չափերով: Այս գործառույթները հաճախ օգտագործվում են այս գրքի օրինակներում՝ կրճատելու կոդի ավելորդությունը: Առաջին օրինակները քննարկվում են հիմնական կաղապարների կառուցման սկզբունքների վերաբերյալ հաջորդ բաժնում:

Շենքի բաղադրիչներ

Տիպիկ վեբ էջի կառուցվածքը սահմանելիս ես սովորաբար այն բաժանում եմ երեք մասի՝ վերնագիր, տեքստ և ստորագիր: Սովորաբար, լավ կազմակերպված կայքերի մեծ մասը կունենա վերնագիր, որը շատ բան չի փոխում. հիմնական մասը ցուցադրում է կայքի պահանջվող բովանդակությունը, ուստի այն հաճախ փոխվում է. Վերջապես, էջատակը պարունակում է հեղինակային իրավունքի մասին տեղեկատվություն և նավիգացիոն հղումներ: Ստորատակը, ինչպես վերնագիրը, սովորաբար մնում է անփոփոխ։ Ինձ սխալ մի հասկացեք. ես ամենևին չեմ փորձում խեղդել ձեր ստեղծագործական ունակությունները: Ես տեսել եմ շատ հիանալի կայքեր, որոնք չեն հետևել այս սկզբունքներին: Ես պարզապես փորձում եմ ընդհանուր կառուցվածքով հանդես գալ, որը կարող է ելակետ ծառայել հետագա աշխատանքների համար:

վերնագիր

Վերնագրի ֆայլը (ինչպես Ցուցակ 9.5-ում) առկա է PHP-ով միացված իմ գրեթե բոլոր կայքերում: Այս ֆայլը պարունակում է

ամբողջ կայքի տեղեկատվություն, ինչպիսիք են վերնագիրը, կոնտակտային տվյալները և HTML էջի կոդի որոշ բաղադրիչներ:

Ցուցակ 9.5. Վերնագրի ֆայլի օրինակ

// Ֆայլ՝ header.tpl

// Նպատակը. Վերնագրի ֆայլ PhpRecipes կայքի համար:

$site_name = «PHPR բաղադրատոմսեր»;

$site_email=" [էլփոստը պաշտպանված է]";

$site_path = "http://localhost/phprecipes";

<? print $site_name; ?>

// Ցուցադրել ընթացիկ ամսաթիվը և ժամը

տպման ամսաթիվ («F d, h:i a»);

Այցելուների համար սովորական է սահմանափակել մուտքը ֆայլեր ներառելու համար, հատկապես, եթե ֆայլերը պարունակում են զգայուն տեղեկություններ (օրինակ՝ գաղտնաբառեր): Apache-ում դուք կարող եք կանխել որոշ ֆայլերի դիտումը` խմբագրելով http.conf կամ htaccess ֆայլերը: Հետևյալ օրինակը ցույց է տալիս, թե ինչպես անջատել բոլոր .tpl ֆայլերի դիտումը.

կարգադրել թույլ տալ, մերժել

Թույլատրել 127.0.0.1-ից

PHP-ի և կայքի անվտանգության խնդիրները մանրամասնորեն ընդգրկված են 16-րդ գլխում:

Վազքի վերնագիր

Վերնագիր (ստորատակ) սովորաբար անվանում են կայքի էջերի ներքևում գտնվող տեղեկատվությունը` կոնտակտային տվյալներ, հղումներ և հեղինակային իրավունքի մասին տեղեկություններ: Այս տեղեկատվությունը կարող է տեղադրվել առանձին ֆայլում և ներառվել որպես ձևանմուշ, ինչպես վերնագիր: Ենթադրենք, որ նոր տարվա գալուստով անհրաժեշտ էր փոխել հեղինակային իրավունքի տեղեկատվությունը և այն բերել «Հեղինակային իրավունք © 2000-2001» ձևի։ Երկու ճանապարհ կա՝ Սուրբ Ծննդյան գիշերն անցկացրեք հարյուրավոր ստատիկ էջեր խմբագրելով կամօգտագործեք այնպիսի ձևանմուշ, ինչպիսին է Ցուցակ 9.6-ում: Մեկ պարզ փոփոխություն, և դուք կարող եք վերադառնալ տոնական գործերին:

Ցուցակ 9.6.Ստորագրի ֆայլի օրինակ (footer.tpl)

Կապ |

ձեր գաղտնիությունը

Ուշադրություն դարձրեք ստորագրի ֆայլում $site_email գլոբալ փոփոխականի օգտագործմանը: Այս փոփոխականի արժեքը ամբողջ էջի վրա է, և մենք ենթադրում ենք, որ header.tpl և footer.tpl ֆայլերը կներառվեն նույն վերջնական էջում: Նաև նշեք $site_path-ի առկայությունը Գաղտնիության հղման մեջ: Ես միշտ ներառում եմ բոլոր հղումների ամբողջական ուղիները իմ ձևանմուշներում. եթե հղման URL-ը բաղկացած է privacy.php մեկ անունից, ապա ստորագրի ֆայլը կոշտ կոդավորված կլինի որոշակի գրացուցակում:

Հիմնական մասը

Վերնագրի և ստորագրի բովանդակությունը ներառված է էջի հիմնական մասում։ Ըստ էության, այն հիմնական մասն է, որը պարունակում է կայքի այցելուներին հետաքրքրող տեղեկատվություն։ Վերնագիրը տպավորիչ տեսք ունի, ստորագիրն օգտակար տեղեկատվություն է պարունակում, բայց էջի հիմնական մասի համար է, որ օգտատերերը նորից ու նորից վերադառնում են կայք: Թեև ես չեմ կարող որևէ առաջարկություն անել էջերի կոնկրետ կառուցվածքի վերաբերյալ, Ցուցակ 9-7-ի նման ձևանմուշները շատ ավելի հեշտացնում են էջի կառավարումը:

Ցուցակ 9.7. Էջի հիմնական մասի օրինակ (index_body.tpl)

/tutorials.php"> ձեռնարկներ

հոդվածներ

սկրիպտներ

կոնտակտ

Բարի գալուստ PHPRecipes: PHP սկրիպտների, ձեռնարկների մեկնարկային վայրը,

և տեղեկատվություն գուրմանային խոհարարության մասին:

Բոլորը միասին դնելով՝ վերնագիր, ստորագիր և բովանդակություն

Թերևս իմ տրամադրությունը լավագույնս արտահայտում է գնդապետ «Հանիբալ» Սմիթը (Ջորջ Պեպարդ) հայտնի A-Team շարքից. «Ես սիրում եմ այն, երբ ամեն ինչ իր տեղն է ընկնում»: Ես նման բան եմ զգում, երբ տարբեր ձևանմուշները համակցվում են ամբողջական վեբ փաստաթուղթ ձևավորելու համար: Փաստաթղթի երեք բաժինները համատեղելով՝ header.tpl, index_body.tpl և footer.tpl, դուք կարող եք արագ կառուցել մի պարզ էջ, ինչպիսին է Ցուցակ 9-8-ում:

Ցուցակ 9.8. Կառուցեք index.php էջի մի քանի ֆայլեր ներառելով

// Ֆայլ՝ index.php

// Նպատակակետը՝ PHPRecipes-ի գլխավոր էջ

// Ցուցադրել վերնագիրը

ներառել ("header.tpl");

// Ելքի հիմնական մարմին

ներառել ("index_body.tpl");

// Ելքային ստորագիր

ներառել ("footer.tpl");

Դե, ինչպե՞ս: Երեք պարզ հրամաններ, և դուք ունեք ավարտված էջ ձեր առջև: Ամփոփիչ էջի տեքստը ներկայացված է Ցուցակ 9.9-ում:

Ցուցակ 9.9. Ցուցակ 9-8-ում կառուցված HTML էջը (index.php)

PHPRecipes

օգոստոսի 23, 15:17

ձեռնարկներ

հոդվածներ

սցենարներ

Կապ

Բարի գալուստ PHPRecipes՝ PHP սկրիպտների, ձեռնարկների մեկնարկային վայր,

և գուրման խոհարարության խորհուրդներ և բաղադրատոմսեր:

Հեղինակային իրավունք 2000 PHPRecipes. Բոլոր իրավունքները պաշտպանված են.

Կապ |

ձեր գաղտնիությունը

Նկ. Նկար 9-1-ը ցույց է տալիս, թե ինչպես է ստացված էջը դիտվում բրաուզերում: Թեև ես սովորաբար չեմ օգտագործում աղյուսակի եզրագծեր, այս անգամ ես դրանք ներառել եմ, որպեսզի էջի երեք մասերն ավելի հստակորեն աչքի ընկնեն նկարում։

Բրինձ. 9.1. 9.8 ցուցակում կառուցված էջի տեսքը

Կաղապարի օպտիմիզացում

Երկրորդ (իմ կարծիքով՝ ավելի նախընտրելի) տարբերակում կաղապարները պատրաստված են առանձին ֆայլում տեղակայված ֆունկցիաների տեսքով։ Սա լրացուցիչ կառուցվածք է ապահովում ձեր կաղապարների համար: Ես այս ֆայլը անվանում եմ սկզբնավորման ֆայլ և դրանում պահում եմ այլ օգտակար տեղեկություններ: Քանի որ մենք արդեն դիտել ենք վերնագրի և ստորագրի համեմատաբար երկար օրինակները, 9-10 և 9-11 ցուցակները փոքր-ինչ կրճատվել են՝ նոր գաղափարը լուսաբանելու համար:

Ցուցակ 9.10. Կայքի օպտիմիզացված ձևանմուշ (site_init.tpl)

// Ֆայլ՝ site_init.tpl

// Նպատակը. PhpRecipes սկզբնավորման ֆայլ

$site_name = «PHPR բաղադրատոմսեր»;

$site_email = " [էլփոստը պաշտպանված է]";

$site_path = "http://localhost/phprecipes/";

ֆունկցիա show_header ($site_name) (

<? print $site_name: ?>

Սա վերնագիրն է

ֆունկցիայի ցուցադրման ստորագիր ()

Սա ստորագիր է

Ցուցակ 9.11. Նախնականացման ֆայլի կիրառում

// Ներառել սկզբնավորման ֆայլը

ներառել ("site_init.tpl");

// Ցուցադրել վերնագիրը

ցույց տալ վերնագիրը ($site_name);

// Մարմնի բովանդակություն Սա մարմնի որոշ տեղեկություններ է

// Ցույց տալ ստորագիր Show_footer();

Նախագիծ՝ էջի գեներատոր

Թեև իմ ստեղծած կայքերից շատերը ստեղծել են էջերի հիմնական բովանդակությունը տվյալների բազայից ընթերցված տեղեկատվության հիման վրա, միշտ կլինեն մի քանի էջեր, որոնք հազիվ են փոխվում: Մասնավորապես, նրանք կարող են տեղեկատվություն ցուցադրել ծրագրավորման թիմի մասին, կոնտակտային տվյալներ, գովազդներ և այլն: Ես սովորաբար այս «ստատիկ» տեղեկատվությունը պահում եմ առանձին թղթապանակում և օգտագործում PHP սկրիպտ՝ այն բեռնելու համար, երբ պահանջվում է: Իհարկե, դուք ունեք հարց. եթե սա ստատիկ տեղեկատվություն է, ապա ինչի՞ համար է նախատեսված PHP script-ը: Ինչու՞ չբեռնել նորմալ HTML էջերը: PHP-ի առավելությունն այն է, որ դուք կարող եք օգտագործել կաղապարներ և ըստ անհրաժեշտության տեղադրել ստատիկ հատվածներ:

<а href = "/static.php?content=$content">Ստատիկ էջի անուն

Սկսենք ստատիկ էջեր ստեղծելուց: Պարզության համար ես կսահմանափակվեմ երեք էջով, որոնք պարունակում են տեղեկատվություն կայքի մասին (Ցուցակ 9.12), գովազդ (Ցուցակ 9.13) և կոնտակտային տվյալներ (Ցուցակ 9.14):

Ցուցակ 9.12. Կայքի տեղեկություններ (about.html)

PHPRecipes-ի մասին

Ո՞ր ծրագրավորողն է, որ չի խառնում ամբողջ գիշեր ծրագրավորումը գուրման թխվածքաբլիթների հետ: Այստեղ PHPRecipes-ում: Հազիվ թե մի գիշեր անցնի, երբ մեր կոդավորողներից մեկը մի քիչ HTML խառնի Portobello Mushrooms-ի կամ նույնիսկ Fondue-ի համեղ ափսեի հետ: Այսպիսով, մենք որոշեցինք բերել ձեզ: լավագույնն այն ամենից, ինչ մենք ամենաշատն ենք սիրում՝ PHP և սնունդ:

Ճիշտ է, ընթերցողներ: Ձեռնարկներ, սցենարներ, սուֆլեներ և այլն: 0nly PHPRecipes-ում:

Գովազդային տեղեկատվություն

Անկախ նրանից՝ նրանք գալիս են սովորելու PHP-ի վերջին տեխնիկան, թե՞ սովորելու, թե ինչպես

հավ թխելու համար կարող եք գրազ գալ, որ մեր ընթերցողները որոշում կայացնողներն են: Նրանք Արդյունաբերությունն են

մասնագետներ, ովքեր որոշումներ են կայացնում այն ​​մասին, թե ինչ է գնում իրենց ընկերությունը:

Գովազդային տեղեկատվության համար դիմեք

">[էլփոստը պաշտպանված է].

Ցուցակ 9.14. Կոնտակտային տվյալներ (contact.html)

Կապվեք մեզ հետ

Կոդավորման հուշում ունե՞ք:

Գիտե՞ք, թե որն է շողոքորթ մածուկի կատարյալ թփինգը:

Իմաց տուր մեզ! Կապվեք թիմի հետ [էլփոստը պաշտպանված է].

Անցնենք static.php էջի կառուցմանը, որը ցուցադրում է պահանջվող ստատիկ տեղեկատվությունը։ Այս ֆայլը (տես Ցուցակ 9-15) ներառում է մեր կայքի էջի բաղադրիչները և site_init.tpl սկզբնավորման ֆայլը:

Ցուցակ 9.15. Ստատիկ էջերի ընդհանուր ելք (static.php)

// Ֆայլ՝ static.php

// Նպատակը. Ցուցադրել պահանջվող ստատիկ էջերը:

// ԶԳՈՒՇԱՑՈՒՄ. ենթադրվում է, որ «site_init.tpl» ֆայլը և բոլորը

// ստատիկ ֆայլերը գտնվում են նույն գրացուցակում:

// Բեռնման գործառույթները և փոփոխականները ներառում են ("site_init.tpl"):

// Ցուցադրել վերնագիրը show_header ($site_name);

// Ցուցադրել պահանջվող բովանդակությունը ներառում է ("$content.html"):

// Ցույց տալ ստորագիր show footer();

Այժմ ամեն ինչ պատրաստ է հիմնական սցենարը կառուցելու համար։ Պարզապես ներառեք էջում

<а href = "static.php?content=about">Ստատիկ էջի անունը

Գովազդային տեղեկատվություն

Կապվեք մեզ հետ

Սեղմելով այս հղումներից որևէ մեկի վրա, զննարկիչում կբեռնվի static.php-ում ներկառուցված համապատասխան ստատիկ էջը:

Արդյունքներ

Այս գլխում դուք իմացաք այն հիմնական նպատակի մասին, որը PHP-ն նախագծված էր լուծելու՝ վեբ էջերի դինամիկ ձևավորում: Քննարկվել են հետևյալ հարցերը.

  • URL-ի մշակում;
  • դինամիկ բովանդակության ստեղծում;
  • հիմնական կաղապարների ներառում և կառուցում:

Գլուխն ավարտվում է էջի գեներատորով, ծրագիր, որը բեռնում է ստատիկ էջերը կաղապարի մեջ և հեշտացնում է մեծ թվով ստատիկ HTML էջերի պահպանումը:

Հաջորդ գլուխը վերաբերում է PHP-ի օգտագործմանը HTML ձևերի հետ համատեղ՝ ձեր կայքի ինտերակտիվությունը մեծապես բարձրացնելու համար: Եվ հետո - փոխազդեցություն տվյալների բազաների հետ: Պետք է շատ հետաքրքիր բաներ սովորել։

 
Հոդվածներ Ըստթեմա:
Որոնողական համակարգերի պատմություն
Բարեւ բոլորին! Այսօր հոդված է լինելու աշխարհի որոնողական համակարգերի մասին, որոնք հիմնականում գոյություն ունեն, երբ են հայտնվել, կոնկրետ ինչ է քշում Ռուսաստանում և ինչ կա ամբողջ աշխարհում: Հոդվածը հսկայական է, այնպես որ նստեք հարմարավետ, ցանկալի է դրանք պատրաստել
Համակարգչի RAM-ի ավելացման ուղիները
Ինչպե՞ս կարող եմ իմանալ, արդյոք իմ համակարգչի հիշողությունը կարող է թարմացվել: Գալիս է մի պահ, երբ սկսում ես հասկանալ, որ համակարգիչն այլևս չի կարող հաղթահարել իր առաջադրանքները, բայց դա չի նշանակում, որ դուք պետք է նորը գնեք, հատկապես, եթե ձեր պրոցեսորն ընդամենը երկու կամ երեք տարեկան է: Բոլոր հ
Ինչու՞ է Պրիպյատի հետախուզական զանգը ռենտգենից դուրս թռչում
Microsoft-ի արտադրանքի մեծ թվով օգտատերեր հայտնում են Windows 10-ի ակտիվացման կորստի և Pro տարբերակը Home-ի փոխակերպման մասին: Օգտագործողները ծանուցվում են ժամկետանց բանալու մասին, և երբ նրանք փորձում են նորից ակտիվացնել, նրանք ստանում են սխալ 0x803fa067 Windo-ի համար:
css տարրի տեսակի ընտրիչ
Այն, ինչ ընտրիչն է css-ում, այդ տարրի կամ տարրերի խմբի նկարագրությունն է, որը բրաուզերին ասում է, թե որ տարրը պետք է ընտրի՝ ոճ կիրառելու համար: Եկեք նայենք հիմնական CSS ընտրիչներին:1) .x .topic-title (ֆոնի գույնը՝ դեղին;)