html өргөтгөлтэй хуудсуудад PHP ашиглах. Маягтдаа маягт html хуудас php-г хэрхэн унших вэ

Би нэвтрэх маягт үүсгэхийг оролдож байна. Энэ бол миний HTML маягтын код юм

Би хувьдаа үүнийг PDO-д зориулж авсан.

4 ба 5-р цэгүүд

$нууц үг = mysql_real_escape_string(sripslashes(md5($_POST["нууц үг"])));

Нэгдүгээрт, үүний дараалал буруу байна. Та $_POST["нууц үг"] хэш болон тэгээдналуу зураас ашиглахыг оролдох - дараатүүний хэшүүдэд ямар ч ташуу зураас байхгүй болно. Гэсэн хэдий ч, хэрэв та хүмүүсийг нууц үгэнд ташуу зураас (эсвэл өөр ямар нэгэн зүйл) ашиглахаас сэргийлэхийг оролдож байгаа бол мөрийг хэшлэхээс өмнө тэдгээрийг арилгах хэрэгтэй.

Дараах md5-ыг нууц үг хэшлэх алгоритм болгон ашиглах ёсгүй бөгөөд энэ нь сул бөгөөд шаардлагатай хэмжээнээс илүү олон удаа мөрний мөргөлдөөнийг үүсгэхэд бүдүүлэг хүчин зүйл болдог.

Тиймээ чи ёстойНууц үгийн хэш эсвэл "хурууны хээ"-г нууц үгээ биш харин хадгалаарай, гэхдээ та эдгээр нууц үгийг зүгээр л md5() функц руу шидэхийн оронд давсалж, хэш болгохыг (хамгийн багадаа sha1-тэй) хүсэж байна.

Мөн өөрийн сонгосон хайлтын системийг ашиглан "нууц үгийн хэш тохиргоо" гэж хай.

6-р цэг

SELECT ID FROM $table WHERE username = "" . $хэрэглэгчийн нэр. "" ба нууц үг = "" . $нууц үг. "";

Анхны асуултанд дутуу байсан = гэж би нэмсэн, гэхдээ л болоо таны хүсэлтэд байгаа хэрэглэгчийн нэр, нууц үг таарахгүй байна...Хэрэв хэн нэгэн таны хэрэглэгчийн нэрэнд SQL тарилга хийж чадсан бол нууц үгийг хэзээ ч баталгаажуулахгүй. Танилцуулах:

user.id-г ХААНА хэрэглэгчээс СОНГОХ user.username = "fred" OR 1 = 1 -- AND user.password = "abc123"

Мэдээллийн сангийн түвшний нууц үгийн баталгаажуулалтад итгэхийн оронд мэдээллийн сангаас хурууны хээний хэрэглэгчийн ID болон нууц үгээ сонгоод дараа нь программ дахь нууц үгээ үнэлэх нь дээр. Энэ нь та нууц үгээ баталгаажуулахын тулд програм доторх тусгай хэш болон давслах алгоритмыг ашиглаж болно гэсэн үг юм.

7-р цэг

$_SESSION["хэрэглэгч"] = $_POST["хэрэглэгчийн нэр"];

Энэ нь зөвхөн хэрэглэгчийн нэрийг сессэд хадгалах уу? Үүнийг ямар ч байдлаар "нэвтрэх баталгаажуулагч" болгон ашиглаж болохгүй, ялангуяа таны сесс дээр хулгайлахаас урьдчилан сэргийлэх ямар нэгэн зүйл байхгүй (илт) байвал.

Сеансын ID-г күүкигээс бодит цаг хугацаанд хялбархан үнэрлэх боломжтой бөгөөд өөр хэн нэгний хэрэглэгчийн нэрийг "зээлэхэд" шаардлагатай бүх зүйл юм. Та ядаж хэрэглэгчийн IP хаяг, UserAgent стринг эсвэл хуудас бүртэй харьцуулж болох харьцангуй статик өгөгдлийн бусад хослолыг холбох замаар сесс хулгайлах магадлалыг багасгахыг хичээх хэрэгтэй... , Би аль хэдийн олж мэдсэн шиг, хэрэв танд AOL ашиглаж байгаа зочин байгаа бол), гэхдээ та хурууны хээг ашиглан 99% үр дүнтэй сесс хийх боломжтой болгож, хэрэглэгчийн сессийг андуурч дахин тохируулах магадлал маш бага бөгөөд хулгайн гэмтлийг багасгах боломжтой.

Хамгийн тохиромжтой нь та багасгах сессийн токен үүсгэж болно CSRF халдлагахэрэглэгч мэдээллийн сан дээр "давуу эрхтэй" үйлдэл хийх шаардлагатай үед (өгөгдлөө шинэчлэх эсвэл өөр зүйл хийх). Токен нь мэдээллийн санд хадгалагдсан бүрэн санамсаргүй, өвөрмөц код байж болно жигнэмэгХэрэглэгч нэвтрэх үед SSL (хэрэв хэрэглэгч HTTPS-ээс гадуур мэдээллийн баазыг шинэчлэх ямар нэгэн үйлдэл хийх боломжгүй, учир нь энэ нь өгөгдлийг интернетээр тодорхой текст хэлбэрээр дамжуулах болно. муу санаа).

Токеныг аливаа/бүх маягтын далд хэлбэрийн талбарт байрлуулсан бөгөөд маягтыг илгээх үед күүки (эсвэл сесс эсвэл мэдээллийн сан)-д хадгалагдсан утгатай харьцуулан шалгана. Энэ нь маягтыг илгээж буй хүн хамгийн багадаа таны вэбсайт дээр шууд сесс хийх болно гэдгийг баталгаажуулдаг.

Хэд хэдэн асуудал байж болно.

Нэгдүгээрт,Таны $match мэдэгдэлд нууц үгийн тэгш байдлын оператор байхгүй байна:

$match = "SELECT id FROM $table WHERE хэрэглэгчийн нэр = "".$хэрэглэгчийн нэр."" болон нууц үг"".$нууц үг."";";

Байх ёстой:

$match = "СОНГОХ id FROM $table WHERE хэрэглэгчийн нэр = "".$хэрэглэгчийн нэр."" болон нууц үг = "".$нууц үг."";";

Хоёрдугаарт, та нууц үгээ мэдээллийн санд оруулна дараа md5 ашиглан ашиглах уу?

Хэрэв тийм биш бол таны хүсэлт md5 (нууц үг)-ийг нууц үгтэй тохируулахыг оролдож байна.

Хувийн вэбсайт үүсгэх үед хүн бүр бүх зүйлийг хангаж чадахгүй боломжит арга замуудтүүний цаашдын хэрэглээ. Сайтыг цаашид хөгжүүлэх үндэслэлийг бэлтгэх нь маш чухал юм. Хэрэв та өмнө нь вэбсайт үүсгэж, бүх хуудсанд .html өргөтгөлийг өгөгдмөл байдлаар өгсөн бол зөвхөн дараа нь PHP ашиглахаар шийдсэн бол цааш уншина уу.

Өмнө нь SSI-г ашиглахын тулд сайтын хуудасны нэр .shtml өргөтгөлөөр төгсдөг байсан бол өнөөдөр ихэнх интернет серверүүд SSI-г .html өргөтгөлтэй хуудсанд ашиглахаар тохируулагдсан байдаг нь нэлээд тохиромжтой. PHP бол огт өөр түүх юм - .php өргөтгөл нь анхдагч өргөтгөл юм. Вэбсайт хөгжүүлэгчид юу ашиглахаа урьдчилан мэддэг өгөгдсөн хэлпрограмчлалын, rhinestone зөв өргөтгөл оноосон байна.

Гэхдээ бүх хуудас .html өргөтгөлөөр төгссөн бол яах вэ?

HTML өргөтгөлийг PHP-ээр солино уу

Үүнийг хэд хэдэн аргаар хийж болно. Хамгийн ойлгомжтой арга бол бүх хуудсанд .php өргөтгөл өгөх эсвэл одоо байгаа өргөтгөлүүдийг (.html, .shtml гэх мэт) өөрчлөх явдал юм. Энэ арга нь сул талуудтай. Жишээлбэл, .html өргөтгөлтэй аль хэдийн индексжүүлсэн хуудсуудыг дахин индексжүүлэх шаардлагатай болно Хайлтын системүүд. Эсвэл бүр ч муу - бүх зүйл гадаад холбоосууд, тодорхой хуудас руу шууд холбосон нь хүчингүй болно. Мөн та эдгээр өөрчлөлтийн талаар сайт бүрийн эзэмшигчдэд мэдэгдэж, хуудас бүрт 301 алдаатай өөр хуудас үүсгэх шаардлагатай болно. Мэдээжийн хэрэг, нэг өргөтгөлийг нөгөө өргөтгөлөөр солих нь зөвшөөрөгдөх зүйл боловч тухайн сайт аль хэдийн олон хуудастай, бусад сайтуудын өөр хуудас руу олон холбоостой бол яах вэ?

Ухамсартай шалтгаанаар Энэ мөчЭнэ сайтын бүх хуудсууд html өргөтгөлөөр төгсдөг бөгөөд би дээрх өөрчлөлтийг хийхийг хүсээгүй бөгөөд ингэснээр өөртөө шаардлагагүй хүндрэл учруулна.

Та үүнийг өөр аргаар хийж болно. Хэрэв сайтыг байршуулсан сервер mod_rewrite-г дэмждэг бол (ихэнх тохиолдолд үүнийг дэмждэг) .htaccess файлд хандах боломжтой бол та яг энэ файлд дараах мөрүүдийг нэмж болно.

RewriteRule ^(.*)\.html $1\.php дээрх RewriteEngine

Энэ кодыг .htaccess-д нэмснээр та санаа зовох хэрэггүй болно. Хүссэн .html өргөтгөлтэй байхгүй бүх хуудсыг Apache-ийн гайхамшгийн ачаар автоматаар .php өргөтгөлөөр солих болно. Гэхдээ энэ арга нь цорын ганц биш юм. Та ижил .htaccess файлд дараах зүйлийг бичиж болно:

AddHandler програм/x-httpd-php .php .html .htm

Миний бодлоор хамгийн амжилттай арга. Энэ нь HTML хуудсуудыг PHP хуудастай тэнцүү болгож, PHP-ийн бүх функцийг HTML өргөтгөлтэй хуудсанд ашиглах боломжтой гэсэн үг юм. Хэрэв танд .htaccess файлд хандах эрх байхгүй бол та хостинг компани руу захидал бичиж, админаас бүртгүүлэхийг эелдэгээр асууж болно. Apache тохиргоо(httpd.conf) сайтад шаардлагатай утга.

Дашрамд хэлэхэд, хэрэв өмнө нь сайт SSI-г дараах байдлаар ашигласан бол:

Дараа нь шинэ PHP төлөвт энэ кодыг дараах байдлаар солих шаардлагатай.

За, энэ бол дээр дурдсан аргуудын аль нэг нь тусална гэж бодож байна.

РНР бол сервер талын суулгагдсан програмчлалын хэл юм. Түүний синтаксийн ихэнх хэсгийг C, Java, Perl хэлнээс авсан. Мөн зөвхөн хэд хэдэн өвөрмөц шинж чанарыг нэмсэн PHP функцууд. Энэ хэлний гол зорилго нь динамикаар үүсгэгдсэн PHP HTML хуудас үүсгэх явдал юм.

PHP-ээс HTML рүү

Нарийн төвөгтэй вэб хуудсуудыг үүсгэх үед та тодорхой даалгавруудыг биелүүлэхийн тулд PHP болон HTML хэлийг хослуулах хэрэгцээтэй тулгарах болно. Өнгөц харахад энэ нь төвөгтэй мэт санагдаж магадгүй, учир нь PHP болон HTML нь бие даасан хоёр салбар юм, гэхдээ энэ нь тийм биш юм. PHP нь HTML-тэй харилцахад зориулагдсан бөгөөд түүний кодыг хуудасны тэмдэглэгээнд оруулах боломжтой.

PHP кодыг тусгай таг ашиглан HTML хуудсанд оруулсан болно. Хэрэглэгч хуудсыг нээх үед сервер нь PHP кодыг боловсруулж, дараа нь боловсруулалтын үр дүнг илгээдэг (хэрэглэгч биш PHP код) хөтөч рүү.

HTML болон PHP хоёрыг нэгтгэхэд маш хялбар байдаг. Тагуудаас гадна PHP скриптийн аль ч хэсэгPHP хөрвүүлэгч үл тоомсорлож, хөтөч рүү шууд дамжуулдаг. Хэрэв та доорх жишээг харвал бүрэн PHP скрипт дараах байдалтай байж болохыг харж болно.

Өнөөдөр сайн уу.

Дээрх код нь энгийн HTMLбага зэрэг PHP хэсэгаль гаралт одоогийн огноосуулгасан огнооны функцийг ашиглан. Энэ тохиолдолд PHP хөрвүүлэгч бүх HTML-г үл тоомсорлож, өөрчлөгдөөгүй хөтөч рүү дамжуулна.

PHP-г HTML-д нэгтгэх нь үнэхээр амархан. Скрипт нь PHP код агуулсан HTML хуудас гэдгийг санаарай. Та зөвхөн HTML агуулсан скрипт үүсгэж болно (тага байхгүй), энэ нь сайн ажиллах болно.

Илүү дэвшилтэт аргууд:

  • Цэсийн зүйл

ба үр дүн:

Short_open_tag ашиглан PHP-г HTML рүү шилжүүлнэ

Хэрэв та PHP-д HTML оруулахаасаа өмнө кодоо аль болох богино болгох шаардлагатай бол short_tags ашиглаж болно. Үүний үр дүнд та орох шаардлагагүй болнобогино_шошго"хамт" Унтраах"дээр" Асаалттай". Хэдийгээр ихэнх серверүүд энэ сонголтыг аль хэдийн идэвхжүүлсэн байдаг ч үүнийг гараар шалгах нь хамгийн сайн арга юм. Богино хаягуудыг ашиглах үед гарч болох асуудал бол XML ашиглах үед зөрчил юм. XML синтакс илэрхийлэлд

Short__tag ашиглан PHP-г HTML рүү шилжүүлнэ

Сайн байна уу, өнөөдөр байна.

Хэрэв та аль болох олон платформтой нийцтэй сайт үүсгэхийг хүсвэл PHP-г HTML-д оруулахдаа short_tag-д найдах хэрэггүй гэдгийг санаарай.

Echo ашиглан HTML рүү PHP

HTML-г PHP файлд нэгтгэх өөр нэг арга бол echo: команд юм.

Энэ нь ихэнх засварлагчдын тэмдэглэгээг тодруулахад нөлөөлнө. Тиймээс бүх зүйлийг сонгох хэрэгтэй давхар хашилт HTML код дотор урвуу зураас ашиглан.

PHP-ээс HTML рүү - Файлын өргөтгөлүүд

Стандарт тохируулсан вэб серверийн хувьд:

AddHandler cgi-script .html .htm

FastCGI ажиллаж байгаа вэб серверийн хувьд:

AddHandler fcgid-script .html .htm

HTML-ээс PHP рүү

Та мөн HTML кодыг PHP скриптэд ашиглаж болно. Та PHP ашиглан хуудас нээхдээ нээгдэх хуудасны дарааллыг өөрчлөхөд л хангалттай HTML шошгоболон PHP.

PHP дээр HTML ашиглах:

Хувийн мэдээлэл

Нэр:
Овог:
"; ?>

HTML-д PHP-г ийм байдлаар оруулах нь танд хамаагүй бага код ашиглах боломжийг олгоно. Энд бид $PHP_SELF-г дэлхий даяар ашигладаг бөгөөд энэ нь тэдгээрийн доор заасан талбарын утгыг нэг файлд ашиглах боломжийг олгодог. Ихэвчлэн ийм маягтанд зориулж хоёр файл үүсгэдэг: эхнийх нь HTML хэлбэр, хоёр дахь нь боловсруулалтыг гүйцэтгэдэг PHP файл юм.

Хэрэв танд олон тооны файл ашигладаг нарийн төвөгтэй PHP програмууд байгаа бөгөөд үүнийг хялбарчлахыг хүсч байвал энэ арга нь туслах болно.

Энэхүү нийтлэл нь төслийн найрсаг багийнхны бэлтгэсэн "HTML хэл дээрх PHP" өгүүллийн орчуулга юм

>

Эхлэгчдэд зориулсан Php

Энэ хуудсан дээр бид динамик вэбсайт бүтээх логикийг тайлбарлахыг хичээх болно. Php бол серверээр ажилладаг скрипт юм. Энэ юу гэсэн үг вэ? Серверт тодорхой хэлний бүтцийг ойлгодог тусгай орчуулагч суулгасан байна. php файл нь өөрөө дээрээс доош гүйж байгаа юм шиг мөр мөрөөр нь уншдаг. Хэрэв энэ нь жишээлбэл, үгийг олвол гарах, дараа нь зогсоод цааш юу ч уншихгүй, харин энэ үгнээс өмнө олсон зүйлээ гүйцэтгэнэ. хэвлэх"Агуу их!"Гайхалтай хэвлэх болно!

хэвлэх"Агуу их!";
гарах ;
?>

Энэ бол хамгийн энгийн php файл боловч бодит байдал дээр та нарийн төвөгтэй php файлтай ажиллах хэрэгтэй болдог. Сайт дээр маш олон хуудас байдаг, бид одоогоор 24 мянга байгаа, бид ижил тооны php файл эсвэл зүгээр л html файл бичих хэрэгтэй болно. Гэхдээ php нь энэ бүгдийг нэг гүйцэтгэгдэх файлд хийх боломжийг олгодог. Өөрөөр хэлбэл, бид энэ файлын доторх холбоосыг өөрөө зохион байгуулах хэрэгтэй, хэрэв ингэвэл ингэ, тэгвэл ингэ. Php нь холбоосыг маш сайн зохион байгуулах боломжийг олгодог. Ерөнхий схем нь:

Та скриптээс тасалгаанууд таалагддагийг харж байна
хэрэв (тэгвэл)
тэгвэл бид хийнэ
}

Тэгээд эхний болзол биелсэн бол яасан, тэр $uslovie 1== "тийм", дараа нь бид скриптийн энэ хэсэгт хамаарах скриптийг хаалтанд ( ) ажиллуулна, дараа нь энэ хэсэгт байна гарах- Энд хөтөлбөр дуусч байна. Өөрөөр хэлбэл, тасалгааны тусламжтайгаар бид php файлыг бүрэлдэхүүн хэсгүүдэд хувааж болно. Тэгээд ямар нөхцөл байна - if($uslovie == "тийм")??? Энэ сүлжээ нь ижил холбоос бөгөөд энэ тохиолдолд хувьсагч байвал ямар нэг зүйл хийгдэх болно $uslovieтэнцүү байх болно тиймээ.

Файлыг нэрлэе all.php. Командын мөрөнд холбоосыг зохион байгуулахын тулд зүгээр л нэмнэ үү all.php?uslovie=тийм. Хэрэв та тушаалын мөрөнд асуултын тэмдэг харвал энэ нь энэ тохиолдолд холбоос юм. $uslovie == "тийм". Дараа нь бид гүйцэтгэх скриптийнхээ холбоосыг бичих html файл үүсгэх болно.



Шинэ хуудас


uslovie1=тийм" >Эхний холбоос
uslovie2=тийм" >Хоёр дахь холбоос

Та хоёр холбоосыг харж байна. Хэрэв та холбоосууд дээр дарвал файл ажиллах болно all.php, мөн эхний тохиолдолд скрипт нь хувьсагч гэж хэлэх болно $uslovie 1==тийм ээ, хоёр дахь тохиолдолд, $uslovie 2==тийм ээ. Эхний холбоосоос эхний тасалгаа дуусах болноболон програм зогсох болно, хоёр дахь холбоосыг ашиглан програм эхний тасалгаа болон дамжуулан ажиллах болно хоёр дахь тасалгаанаас ямар нэг зүйл биелэх болно(дээрээс үзнэ үү). Долларын тэмдэг нь холбоосууд дээр бичигдээгүй гэдгийг анхаарна уу, програм нь тэдгээрийг скрипт рүү дамжуулахдаа, өөрөөр хэлбэл командын мөрөнд шилжүүлэхдээ хувьсагч болгодог.

Одоо бид php файлын холбоосыг хэрхэн яаж зохион байгуулах, түүнийг хэрхэн хэсэг болгон хуваах, html текст дэх линкийг хэрхэн яаж зохион байгуулахаа мэддэг болсон. Гэхдээ бас нэг зүйл байна ... Хэрэв та сайтыг ийм байдлаар зохион байгуулбал анхны хэлбэрээр нь, тийм ч олон холбоос байхгүй үед асуудал харагдахгүй. 10 тасалгаа байна гэж бодъё, тэд бүгд нэг файлд чимээгүйхэн багтах болно. Гэхдээ маш олон холбоос байгаа бол жишээ нь бид 24,000 хуудастай бол зарчмын хувьд бүх хэсгийг нэг php файлд багтаах боломжгүй юм. Та нэг файлаас энэ эсвэл тэр тасалгааг хайж олох, жишээлбэл, үүнийг өөрчлөх замаар эрүүдэн шүүнэ. Нэмж хэлэхэд, файлын хэмжээ маш том байх болно, манай all.php нь 1 МБ багтаамжтай байх болно. Нэмж дурдахад та өөр нэг зүйлийг ойлгох хэрэгтэй: олон сервер дээр гүйцэтгэх боломжтой файлуудын хэмжээ хязгаартай байдаг (жишээлбэл, 50 Кб); хэрвээ хэтэрсэн бол ийм файлыг үл тоомсорлож, гүйцэтгэхгүй. Эдгээр тооцоололтой холбогдуулан бид үндсэн файлын хэмжээг 8Kb болгон багасгасан боловч энэ нь 1MB гүйцэтгэлийн ачаалалтай байдаг. Үүнийг яаж хийх вэ? Php нь php файлыг командыг ашиглан хэсэг болгон хуваах гайхалтай боломжийг олгодог орсон....

Одоо бид үндсэн файлаа хэрхэн 8Кб болгон бууруулсан нь тодорхой боллоо, учир нь бусад бүх файлууд нь нийт 1 МБ хэмжээтэй байдаг бөгөөд бид тэдгээрийг тусдаа хавтсанд нууж, шаардлагатай бол, өөрөөр хэлбэл командын холбоосоос хамааран холбосон. шугам. Оруулах команд нь файлуудыг үндсэн скрипт дээр бичигдсэн мэт холбодог тул хэрэв оруулсан файлд та мэдээллийн сан эсвэл html файлд хандах юм бол тооллогыг үндсэн файлаас яг нарийн хийх шаардлагатай болно, манай тохиолдолд. all.php. Жишээлбэл, хавтас байдаг html, энэ нь файл агуулж байна one.htmяаж хэвлэх вэ. Дараа нь one.php файл дараах байдалтай байна.

оруулах"html/one.htm";
хэвлэх
гарах ;
?>

Бид агуулгыг хэвлэсэн one.htm, дээр нь хэвлэсэн Энэ бол хөтөлбөрийн эхний хэсэг юм, мөн хөтөлбөрийг зогсоосон. Өөрөөр хэлбэл, html онол дээр үндэслэн бид файлыг оруулах хэрэгтэй болно one.htmТэгэхээр: "../html/one.htm" оруулах, хавтаснаас хойш htmlфайлаас нэг түвшний дээгүүр байрладаг one.php. Гэхдээ php-д тийм биш, include команд нь ердөө л скриптэд код нэмдэг бөгөөд энэ нь түүний салшгүй хэсэг болж байгаа бөгөөд энэ нь бүх холбоосыг үндсэн файлтай харьцуулан тооцдог болохоос оруулсан холбоостой нь хамааралгүй болно гэсэн үг юм.



Шинэ хуудас


uslovie1=тийм" >Зүгээр л эхний холбоос
uslovie1=тийм& үйлдэл хийх=тийм" >
uslovie2=тийм" >Зөвхөн хоёр дахь холбоос
uslovie2=тийм& үйлдэл хийх=yes" >Хоёр дахь холбоос, гэхдээ бас act=yes

Дараа нь php файл one.phpүүнийг ингэж хувиргана:

хэрэв($act == "тийм")(
оруулах"html/one.htm";
гарах ;
}
хэвлэх"Энэ бол хөтөлбөрийн эхний хэсэг";
гарах ;
?>

Хэрэв та холбоос дээр дарсан бол uslovie1=yes" >Эхний холбоосыг хэвлэх болно Энэ бол хөтөлбөрийн эхний хэсэг,Хэрэв та uslovie1 холбоос дээр дарсан бол=тийм& үйлдэл хийх=yes" >Эхний холбоос, гэхдээ бас act=yes, дараа нь файлын агуулгыг хэвлэх болно html/one.htm, програм зогсох болно.

403 КБ

Архивыг татаж аваарай, энэ нь танд Php-г мэдэх шаардлагагүй, зөвхөн HTML мэдэхэд л хангалттай.

Тиймээ.))

index.php-ийн хуулбарыг хийж, нэрийг нь өөрчлөх, жишээлбэл, contact.php, дараа нь дундыг дунд 2 болгож шинэ агуулгатай болгох нь надад илүү хялбар байх болно.

Данх Би жаахан PHP


Би одоо ч ойлгохгүй байна.
Би вэбсайттай.
үндэс дэх индекс файл. Жишээ нь, өөр хавтсанд дээд дунд товч файлууд байдаг.

Цэс байна. Таныг цэсийн зүйл дээр дарахад өөр дунд харагдахыг хүсч байна.

Үүнийг яаж хийх вэ, хаана тавих вэ???

Хариулт: За, хаана ч байсан. Энэ нь маш энгийн, цэсийн скрипт menus.html хийх тухай юм


массивгүй ямар нэг зүйл $_GET ["uslovie"] ; Таны жишээ надад тохирохгүй байна

Хариулт: Таны сервер дээр глобал хувьсагчийн дэмжлэг идэвхгүй, хэрэв тийм бол та бүх скриптийнхээ эхэнд мөр тавьж болно.

хэрэв (тогтоосон($_GET )) ( тус бүр($_GET-г $key =>$val ) ( $$key =$val;))

тэгвэл та $_GET [ "uslovie" ] ашиглахгүйгээр манай скриптүүдийг ашиглаж болно, гэхдээ зүгээр л $uslovie-г тавь.


Танд маш сонирхолтой эх сурвалж бий..
Мэдээлэл өгсөнд баярлалаа.

Хариулт:


Та PHP вэб сайтыг хэрхэн бүтээдэг талаар судлахаа эртнээс амласан. Яагаад амлалтаа биелүүлээгүй юм бэ? Магадгүй энэ сэдвээр нийтлэл бичээрэй (мөн хэрэв та MySQL ашигладаг бол бүх зүйл сайхан болно).

Хариулт:


Маш тийм. Гагцхүү энд байна, too.htm-ийн оронд танд хоёр.htm хэрэгтэй байх
Чухал биш, гэхдээ бүх зүйлийг эмх цэгцтэй байлгахын тулд))

Хариулт:


Бүх операторууд болон PHP кодуудыг хаана уншиж, сурч болохыг надад хэлээрэй, жишээ нь: цуурай , оруулах , өөр , хэрэв , хэвлэх , тус бүр , тогтоосонгэх мэт, тэд юу гэсэн үг вэ, тэд юу үйлчилдэг вэ?

Хариулт: Александр, би нэг сарын турш амралттай байсан, одоо би бүх сайтын шинэ хувилбарыг дуусгаж байна. Би дуусмагц энэ тухай жижиг хуудас хийх болно.


Mobilesfinks, намайг php 4-ийг дахин суулгахаар бэлдэж байтал php 5 дээрх сайтын шинэ хувилбар аль хэдийн гарсан байсан. Ямар ч асуудал гараагүй, бүх зүйл ажиллалаа %tashus%

Хариулт:


Сайн уу?

Хуудас бүрийн цонхны дээд талд байгаа TITLE-г хэрхэн өөрчлөхийг надад хэлж өгнө үү: өөрөөр хэлбэл " Шинэ хуудас" ...

Жишээлбэл, хэрэв та "1" холбоосыг дагавал цонхыг "Эхний хэсэг. Математик" гэж нэрлэх ёстой - өөрөөр хэлбэл HTML код нь байх ёстой. Эхний хэсэг. Математик...
Хэрэв холбоос нь "2" бол, жишээлбэл, цонхыг "Хоёр дахь хэсэг. Газарзүй" гэж нэрлэх ёстой, өөрөөр хэлбэл HTML код нь байх ёстой. Хоёр дахь хэсэг. Газарзүй...

Би үүнийг PHP ашиглан хэрхэн өөрчлөх вэ?

Хариулт: html.html


Бид Денверт PHP4 суулгах хэрэгтэй. Суулгах скрипт нь бүх өөрчлөлтийг өөрөө хийх болно.
Дараа нь таны үүсгэсэн all.php файл байгаа хавтсанд
".htaccess" нэртэй файлыг үүсгээд түүнд мөр нэмнэ үү
Хуудас: 1
Одоогийн хуудас: 1 Нийт мессеж: 22

Компьютерийн тухай аливаа номонд олон уншигчид шууд сонирхолгүй бүх зүйлийг эргэлзэж, үнэхээр хэрэгтэй зүйл рүү шилждэг. хүсэж байнамэдэх. Би хувьдаа ийм л зүйл хийдэг. Гэсэн хэдий ч үүнд буруу зүйл байхгүй - эхнээс нь дуустал унших шаардлагатай техникийн ном ховор байдаг. Эсвэл энэ нь таны хийсэн зүйл байж магадгүй - эхний найман бүлгийг алгасаад хамгийн сонирхолтой гарчигтай байсан тул энэ бүлгийг сонгосон уу? Ажил дээрээ өөр төсөл шатаж байхад хэн нарийн ширийн зүйлд цаг үрэхийг хүсэх вэ?

Аз болоход, ийм яаруу байдал нь таныг PHP ашиглан сайт бүтээх, вэбтэй харилцахад зориулагдсан номын хоёрдугаар хэсгийн материалыг зохих ёсоор эзэмшихэд саад болохгүй. Энэ бүлэгт та вэб хуудасны агуулгыг хэрхэн хялбархан өөрчлөх, холбоосууд болон төрөл бүрийн стандарт функцуудыг ашиглан вэбээр аялах талаар сурах болно. Дараагийн бүлэгт танилцуулсан материалыг нөхөх болно - энэ нь HTML хэлбэрээр хэрэглэгчтэй харилцах арга хэрэгслийг нарийвчлан авч үзэх болно.11-р бүлэгт мэдээллийн сантай интерфейсийн зохион байгуулалтыг тайлбарласан болно. Хоёрдахь хэсгийн үлдсэн бүлгүүдэд PHP дээр вэб програмчлалын чухал бус талуудыг авч үзэх болно.

Гэсэн хэдий ч 1-р хэсэг дэх материалыг санаж байх хэрэгтэй зайлшгүй шаардлагатай PHP-ийн ердийн мэдлэгийн хувьд. Та 1-р хэсгийг аль хэдийн уншсан гэж үзэж байгаа тул жишээнүүдэд өмнө дурдсан олон ойлголтыг ашиглах болно. Тиймээс, хэрэв та номынхоо зарим хэсгийг гүйлгэж үзвэл өмнөх бүлгүүд рүү үе үе буцаж, гүйцэх хэрэгтэй болно.

Энгийн холбоосууд

<а href = "date.php">

$link = "DATE.php";

хэвлэх"<а href = \"$link\">Өнөөдрийн огноог харах
\n"

Холбоос кодын хашилтын (") өмнө яагаад урвуу ташуу зураас (\) байгааг та гайхаж байгаа байх? PHP хэл дээрх хашилтууд нь тусгай тэмдэгтүүд бөгөөд мөрийг зааглагч болгон ашигладаг. Иймээс ишлэлүүд нь тэмдэгт мөрт байх ёстой. .

Хэрэв хашилтаас зугтах шаардлага таныг бухимдуулж байвал php.ini файл дээрээ magic_quotes_gpc горимыг идэвхжүүлээрэй. Үр дүн нь бүх хасах тэмдэг, ишлэл, урвуу зураас болон хоосон тэмдэгтүүд юм. текст дотроос автоматаар гарч ирдэг!

Өгөгдсөн жишээг хөгжүүлцгээе. Хөтөч дээрх холбоосуудын жагсаалтыг хурдан харуулахын тулд та массив ашиглаж болно:

// Хэсгийн массив үүсгэх

$contents - array("сургалт", "нийтлэл", "скрипт", "холбоо барих");

// Массивын элемент бүрийг давтаж, дараалан харуулна

төлөө ($i = 0; $i< sizeof($contents; $i++)

хэвлэх" ".$contents[$i]."
\n";

// - төгсгөлийн тэмдэглэгээний тусгай тэмдэглэгээ;

Файлын бүрэлдэхүүн хэсгүүд (загварууд)

Бид миний дуртай PHP функцуудын нэг дээр ирлээ. Загвар (вэб програмчлалтай холбоотой) нь таны хэд хэдэн хуудсанд ашиглах вэб баримт бичгийн нэг хэсэг юм. PHP функцууд шиг загварууд нь хуудасны агуулга болон програмын кодыг шаардлагагүй хуулах/хуулахаас хамгаалдаг. Сайтын цар хүрээ нэмэгдэхийн хэрээр загваруудын ач холбогдол нэмэгддэг, учир нь тэдгээр нь бүх сайтын түвшинд хялбар бөгөөд хурдан өөрчлөлт хийх боломжийг олгодог. Энэ хэсэгт энгийн загваруудыг ашиглах үед нээгддэг зарим боломжуудыг тайлбарлах болно.

Ихэвчлэн контент/кодын нийтлэг хэсгүүдийг (жишээ нь загвар) тусдаа файлд хадгалдаг. Вэб баримт бичгийг бүтээхдээ та эдгээр файлуудыг хуудасны зохих газруудад "оруулна". PHP дээр үүнд хоёр функц байдаг: include() болон require().

оруулах() ба шаардах()

РНР-ийн хамгийн гайхалтай талуудын нэг бол загвар, програмчлалын сангуудыг бүтээж, дараа нь шинэ скриптэд оруулах чадвар юм. Номын санг ашиглах нь өөр өөр вэбсайтуудын нийтлэг функцийг ашиглахад цаг хугацаа, хүчин чармайлтыг хэмнэдэг. Уншигчидтай

бусад хэлээр (C, C++ эсвэл Java гэх мэт) програмчлалын туршлагатай байх ба функцийн номын сангийн тухай ойлголт, функцийг өргөтгөх программд ашиглах талаар сайн мэддэг.

Скриптэд нэг буюу хэд хэдэн файл оруулах нь стандарт PHP-ийн require() болон include() функцуудыг ашиглан хийгддэг. Дараагийн хэсэгт харуулснаар эдгээр функц бүр нь тодорхой нөхцөл байдалд хамаарна.

Функцүүд

PHP-д PHP скриптэд файл оруулах дөрвөн функц байдаг:

  • оруулах();
  • оруулах_нэг удаа();
  • шаардах();
  • шаарддаг_нэг удаа().

Нэрний ижил төстэй байдлыг үл харгалзан эдгээр функцууд нь янз бүрийн асуудлыг шийддэг.

include() функц нь файлын агуулгыг скриптэд оруулна. include() функцийн синтакс нь:

оруулах(файлын файл]

include() функц нь нэг сонирхолтой онцлогтой - үүнийг нөхцөлт байдлаар гүйцэтгэх боломжтой. Жишээлбэл, хэрэв функцийн дуудлага if командын блокт орсон бол. тэгвэл i f нөхцөл үнэн бол л файл програмд ​​орно. Хэрэв includeO функцийг нөхцөлт тушаалд ашигладаг бол энэ нь ёстойбуржгар хаалт эсвэл өөр хязгаарлагчаар хаагдсан байна. Жагсаалт 9.1 ба 9.2-ын синтаксийн ялгааг харьцуул.

Жагсаалт 9.1. include()-ийн буруу хэрэглээ

хэрэв (зарим_нөхцөлтэй)

оруулах("text91a.txt"); өөр

оруулах("text91b.txt");

Жагсаалт 9.2. include()-ийн зөв хэрэглээ

хэрэв (зарим_нөхцөлтэй):

оруулах("text91a.txt");

оруулах("text91b.txt");

Оруулсан файлын бүх PHP код Заавал PHP хаягууд дээр байрладаг. PHP командыг файлд хадгалахад л зөв боловсруулагдана гэж битгий бодоорой:

Үүний оронд та тушаалыг зохих шошгон дээр боох хэрэгтэй бөгөөд үүнийг дараах жишээнээс харж болно.

"энэ нь буруу оруулах файл" гэж хэвлэх;

include_once() функц нь include() функцтэй ижил үйлдлийг гүйцэтгэдэг: нэг тохиолдолд файлыг програмд ​​оруулахаас өмнө аль хэдийн орсон эсэхийг шалгадаг. Хэрэв файл аль хэдийн орсон бол include_once() дуудлагыг үл тоомсорлож, хэрэв байхгүй бол стандарт файлын оруулга хийгдэнэ. Бусад бүх талаараа include_once() нь include()-ээс ялгаатай биш юм. include_once() функцийн синтакс нь:

оруулах_нэг удаа(файлын файл)

Ерөнхийдөө require() функц нь include()-той төстэй - энэ нь мөн require() дуудлагын байрлаж буй файлын загварыг агуулдаг. require() функцийн синтакс нь:

шаардах (файлын файл)

Гэхдээ require() болон include() функцуудын хооронд нэг чухал ялгаа бий. require()-аар заасан файл нь скрипт дэх require()-ын байршлаас үл хамааран скриптэд орсон байна. Жишээлбэл, хэрэв та if блок дотор requi re() гэж дуудвал нөхцөл худал бол файл скриптэд орсон хэвээр байх болно!

Ихэнх тохиолдолд сайтад ашигладаг хувьсагч болон бусад мэдээлэл бүхий файл үүсгэж, шаардлагатай бол оруулах нь тохиромжтой байдаг. Хэдийгээр энэ файлын нэр дур зоргоороо байдаг ч би үүнийг ихэвчлэн 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\">$холбоо барих_нэр."; ?>

"URL fopen wrappers" горимыг идэвхжүүлсэн тохиолдолд require() руу залгах үед URL дамжуулахыг зөвшөөрнө (энэ горим нь анхдагчаар идэвхжсэн).

Сайтын хэмжээ ихсэх тусам зарим файлууд скриптэд хэд хэдэн удаа орсон байж магадгүй юм. Заримдаа энэ нь асуудал үүсгэдэггүй, гэхдээ зарим тохиолдолд файлыг оруулаад өөрчлөгдсөн хувьсагчдын утгыг дахин тохируулахад хүргэдэг. Хэрэв оруулах файл нь функцуудыг тодорхойлдог бол нэрлэх зөрчил гарч болзошгүй. Үүнийг хэлснээр бид дараагийн функц руу очно - require_once().

require_once() функц нь файлыг скриптэд зөвхөн нэг удаа оруулахыг баталгаажуулдаг. requi re_once() дуудагдсаны дараа ижил файлыг оруулах бүх оролдлогыг үл тоомсорлодог. require_once() функцийн синтакс нь:

Таны вэб програмын хэмжээ нэмэгдэж эхлэх тусам та файл оруулах функцийг илүү олон удаа ашиглаж эхлэх болно. Кодын илүүдлийг багасгахын тулд эдгээр функцууд энэ номын жишээн дээр байнга гарч ирдэг. Эхний жишээнүүдийг үндсэн загваруудыг бүтээх зарчмуудын талаар дараагийн хэсэгт авч үзнэ.

Барилгын бүрэлдэхүүн хэсгүүд

Ердийн вэб хуудасны бүтцийг тодорхойлохдоо би ихэвчлэн толгой, их бие, хөл гэсэн гурван хэсэгт хуваадаг. Дүрмээр бол ихэнх зөв зохион байгуулалттай вэбсайтууд бараг өөрчлөгдөөгүй толгойтой байдаг; үндсэн хэсэг нь сайтын хүссэн контентыг харуулдаг тул байнга өөрчлөгддөг; Эцэст нь, хөл хэсэг нь зохиогчийн эрхийн мэдээлэл, навигацийн холбоосыг агуулдаг. Толгой хэсэг шиг хөл нь ихэвчлэн өөрчлөгдөөгүй хэвээр байна. Битгий буруугаар ойлгоорой - би таны бүтээлч хүсэл тэмүүллийг дарах гэсэнгүй. Эдгээр зарчмуудыг дагаж мөрддөггүй олон гайхалтай вэбсайтуудыг би харсан. Би зүгээр л цаашдын ажлын эхлэл болох ерөнхий бүтцийг гаргахыг хичээж байна.

Гарчиг

Толгой файл (Жагсаалт 9.5-д байгаа шиг) миний PHP-ийг дэмждэг бараг бүх вэбсайтад гарч ирдэг. Энэ файлыг агуулж байна

гарчиг, холбоо барих мэдээлэл, зарим HTML хуудасны кодын бүрэлдэхүүн хэсэг гэх мэт сайтын хэмжээний мэдээлэл.

Жагсаалт 9.5. Толгой файлын жишээ

// Файл: header.tpl

// Зорилго: PhpRecipes вэбсайтын толгой файл.

$site_name = "PHPRRecipes";

$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 скриптүүд, хичээлүүд,

болон тансаг хоол хийх тухай мэдээлэл!

Бүгд хамтдаа: толгой, хөл, бие

Алдарт "А-баг" цувралын хурандаа "Ганнибал" Смитийн (Жорж Пеппард) "Бүх зүйл байрандаа ороход би дуртай" гэсэн мөр миний сэтгэл санааг хамгийн сайн дүгнэдэг байх. Би өөр өөр загварууд нийлж бүрэн вэб баримт бичгийг бүрдүүлэхэд ижил төстэй зүйл тохиолдож байна. 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 (index.php) дээр бүтээгдсэн HTML хуудас

PHPRRecipes

8-р сарын 23, 15:17

хичээлүүд

нийтлэл

скриптүүд

холбоо барих

PHP скриптүүд, зааварчилгааны эхлэл болох PHPRecipes-д тавтай морилно уу.

болон тансаг хоол хийх зөвлөмж, жор!

Зохиогчийн эрх 2000 PHPRecipes. Бүх эрх хуулиар хамгаалагдсан.

холбоо барих |

таны хувийн нууц

Зураг дээр. Зураг 9.1-д үүссэн хуудас нь хөтөч дээр хэрхэн харагдахыг харуулж байна. Хэдийгээр би хүснэгтийн хүрээг ихэвчлэн ашигладаггүй ч энэ удаад хуудасны гурван хэсгийг зураг дээр илүү тод харуулахын тулд зурсан.

Цагаан будаа. 9.1. Жагсаалт 9.8-д оруулсан хуудасны харагдах байдал

Загвар оновчлол

Хоёрдахь хувилбарт (миний бодлоор, илүү тохиромжтой) загварууд нь тусдаа файлд байрладаг функц хэлбэрээр бүтээгдсэн болно. Энэ нь таны загварт нэмэлт бүтцийг бий болгодог. Би энэ файлыг эхлүүлэх файл гэж нэрлээд бусад хэрэгтэй мэдээллийг дотор нь хадгалдаг. Бид харьцангуй урт толгой ба хөлийн жишээнүүдийг аль хэдийн авч үзсэн тул 9.10 ба 9.11 жагсаалтуудыг шинэ санааг харуулахын тулд бага зэрэг богиносгосон.

Жагсаалт 9.10. Сайтын оновчтой загвар (site_init.tpl)

// Файл: site_init.tpl

// Зорилго: PhpRecipes эхлүүлэх файл

$site_name = "PHPRRecipes";

$site_email = " [имэйлээр хамгаалагдсан]";

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

функц show_header($site_name) (

<? print $site_name: ?>

Энэ бол толгой хэсэг

функцийг хөл хэсгийг харуулах()

Энэ бол хөл хэсэг юм

Жагсаалт 9.11. Эхлүүлэх файлыг ашиглаж байна

// Эхлүүлэх файлыг оруулна

оруулах("site_init.tpl");

// Гарчиг хэвлэх

гарчгийг харуулах($сайт_нэр);

// Биеийн агуулга Энэ бол биеийн зарим мэдээлэл юм

// Хөл хэсгийг харуулах Show_footer();

Төсөл: хуудас үүсгэгч

Хэдийгээр миний үүсгэсэн вэбсайтуудын ихэнх нь мэдээллийн сангаас уншсан мэдээлэлд үндэслэн үндсэн хуудасны агуулгыг үүсгэсэн ч бараг өөрчлөгдөөгүй цөөн хэдэн хуудас үргэлж байдаг. Ялангуяа тэд хөгжүүлэлтийн баг, холбоо барих мэдээлэл, зар сурталчилгаа гэх мэт мэдээллийг харуулах боломжтой. Би ихэвчлэн энэ "статик" мэдээллийг тусдаа хавтсанд хадгалдаг бөгөөд хүсэлт ирэхэд PHP скрипт ашиглан ачаалдаг. Мэдээжийн хэрэг, танд асуулт байна - хэрэв энэ нь статик мэдээлэл бол PHP скрипт юунд зориулагдсан вэ? Яагаад ердийн HTML хуудсыг ачаалж болохгүй гэж? PHP-ийн давуу тал нь та загваруудыг ашиглаж, шаардлагатай бол статик хэсгүүдийг оруулах боломжтой юм.

<а href = "/static.php?content=$content">Хуудасны статик нэр

Статик хуудас үүсгэж эхэлцгээе. Энгийн болгох үүднээс би сайтын мэдээлэл (Жагсаалт 9.12), зар сурталчилгаа (Жагсаалт 9.13), холбоо барих мэдээлэл (Жагсаалт 9.14) агуулсан гурван хуудсаар хязгаарлах болно.

Жагсаалт 9.12. Сайтын тухай мэдээлэл (about.html)

PHPRecipes-ийн тухай

Ямар програмист бүхэл шөнийн хөтөлбөрийг тансаг жигнэмэгтэй холихгүй вэ? Энд PHPRecipes дээр. Манай кодлогчдын аль нэг нь HTML хэлийг амттай таваг Портобелло мөөг, тэр ч байтугай Фондютэй холихгүй бол бараг л шөнө өнгөрдөггүй. Тиймээс бид танд хүргэхээр шийдлээ. Бидний хамгийн дуртай зүйлсийн хамгийн шилдэг нь: 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) толгойг харуулах;

// Хүссэн агуулгыг гаргана include("$content.html"):

// Хөл хэсгийг харуулах хөлийг харуулах();

Одоо үндсэн хувилбарыг бүтээхэд бүх зүйл бэлэн болсон. Зүгээр л хуудсандаа оруулаарай

<а href = "static.php?content=about">Статик хуудасны нэр

Зар сурталчилгааны мэдээлэл

Бидэнтэй холбоо барина уу

Хэрэв та эдгээр холбоосуудын аль нэг дээр дарвал таны хөтөч static.php-д суулгагдсан харгалзах статик хуудсыг ачаалах болно!

Үр дүн

Энэ бүлэгт та PHP-ийг үүсгэсэн үндсэн ажил болох вэб хуудсыг динамикаар бүтээхтэй танилцсан. Дараахь асуудлыг авч хэлэлцэв.

  • URL боловсруулах;
  • динамик контентыг бий болгох;
  • үндсэн загваруудыг оруулах, бүтээх.

Энэ бүлэг нь хуудас үүсгэгчээр төгсдөг бөгөөд энэ нь статик хуудсуудыг загвар болгон ачаалж, олон тооны статик HTML хуудсыг дэмжихэд хялбар болгодог програм юм.

Дараагийн бүлэгт PHP-г HTML маягтуудтай хослуулан ашиглан сайтынхаа харилцан үйлчлэлийг ихээхэн сайжруулахад чиглэнэ. Тэгээд дараа нь - мэдээллийн сантай харилцах! Танд сурах сонирхолтой зүйл их байна.


Үнэгүй програмууд, ашигтай зөвлөмжүүдийн ертөнц
2024 whatsappss.ru