Archive

Archive for the ‘PHP/MySql’ Category

Symfony 1: Apache virtual host configuration

February 11th, 2010 54 comments

Ubuntu дээр Symfony framework-ийг эхлэн суралцагчдад зориулав.

Symfony 1.4 Jobeet(doctrine) жишээний эхний өдөр буюу суулгах, тохируулах хэсэгт ubuntu дээр хирхэн виртуаль хост үүсгэх талаар нэмэлт тайлбар хийе. Symfony -ийг өөрийн веб сервер дээр суулгахад 2 янзаар суулгаж болно. 1) Ugly way буюу бүх файлуудыг document root фолдер дотороо хуулаад явах. 2) Secure way буюу нууцлал хамгаалалт сайтайгаар хийх. Энэ вебийн бизнесс логик болон бүх тохируулгыг вебийн рүүтийн гадна байршлуулдаг продакшн орчин юм. Миний дор дурдах зүйл энэ хэлбэрээр хийгдэх болно. Read more…

PHP/MySQL 7: mysqli prepared statement бичих

August 3rd, 2009 22 comments

Өмнө нь mysqli болон prepared-statement -ийн талаар бичсэн одоо шуудхан жишээ бичээд түүн дээрээ тайлбар хийгдээд явъя. Хоёр янзаар бичиж болно. Жишээнүүдийг өмнөх бичлэгүүдэд ашиглаж байсан доорхи хүснэгт дээр хийе. Read more…

Categories: PHP/MySql Tags: , ,

PHP/MySQL 6: mysqli extension ашиглах 1

July 3rd, 2009 3 comments

PHP -ийн mysql-тэй ажиллах сангуудын талаар өмнөх бичлэгүүдэд дурдсан. Одоо mysqli санг хирхэн ашиглах талаар авч үзье. Энэ бичлэгт mysqli -аар бичих хэлбэрүүдээс процедур ба обьект хандалтат хэлбэрээр бичих талаар авч үзэх болно. Mysqli мэдээж боломж хурд нууцлал хамгаалалтаараа маш илүү гэж веб сайтууд дээр бичсэн байна.  Бичих хэлбэрийн хувьд процедур, обьект хандалтаар бичиж болохоос гадна Mysql 4.1 -ээс хойш бий болсон бинари протоколыг ашигладаг болсон энэ нь SSH шиг ажилладаг тул нууцлал хамгаалалтыг маш сайжруулсан гэж  үзэж байгаа. Мөн ажиллах хурд нь маш их нэмэгдсэн гэсэн байна. Зарим тохиолдолд 30, 40 дахин хурдан ажилладаг гэсэн байх юм. Ер нь prepared statment ашиглан шинээр нэмэх засах үйлдэл олныг гүйцэтгэхэд хурд нэмэгдэх боломжтой л доо. За ингээд хирхэн яаж ашиглах талаар авч үзье. Read more…

PHP/MySQL 5: Prepared Statement

June 17th, 2009 8 comments

Prepared Statement гэж юу вэ?

Prepared гэдэг үг бол бэлтгэсэн гэсэн утгатай энд ч энэ утгаараа хэрэглэгдэнэ. Харин Statement гэдэг их олон утгата үг юм шиг байгаан. Харин энд бол илэрхийлэл гэсэн утгаар илүү хэрэглэгдэж байна. Програмчлалын хэлэнд хэрэглэгдэх утгыг http://en.wikipedia.org/wiki/Statement_(programming) үүгээр холбогдож харна уу. Яг энд байгаа утгаараа SQL хэлэнд ашигладаж байна. Тэгэхээр утгачлан ойлговол урьдчилан бэлтгэсэн sql илэрхийлэл буюу query гэж ойлгож болох нь. Тэгэхээр урдчилаад sql query-ний темплатээ бэлдчихээд түүндээ өгөгдөлүүдийг нь өгөөд л ажиллуулаад байдаг тийм арга техник гэж ойлгож болно. доорхи зүйлүүдийг анхааралтай уншвал бүрэн ойлголт авч чадна. Read more…

PHP/MySQL 4: Энэ сэдвээр цааш явахаас өмнө

June 13th, 2009 8 comments

PHP MySQL хоёр хамгийн нийцтэй ажилладаг, өргөн ашиглагддаг гэдгийг бүгд мэднэ. Харин аль аль нь хөгжиж хоорондоо холбогдон ажиллах нь улам бүр сайжирсаар байна. MySQL -ийн хамгийн өргөн дэлгэрсэн хувилбар бол 3.23 байсан бөгөөд үүний дараагийн маш том, том өөрчлөлтүүдийг агуулсан хувилбар бол 4.1 хувилбар нь байсан. Энэ үеэс PHP ч уг хувилбарын боломжийг бүрэн дүүрэн ашиглах боломжтой сануудыг гаргасан байх юм. Одоогийн байдлаар php mysql-тэй холбогдон ажиллах 3 сан (extension) ашиглагдаж байна. Эдгээр нь mysql, mysqli, PDO (PHP Database Objects). Хуучин бидний ашиглаж дадсан mysql сан маань хуучирсан сан болжээ.  Харин цаашид аль хэдийн бий болоод өргөн ашиглагддаг болсон бусад дэвшилтэд сангуудыг ашиглах талаар блогтоо бичихээр шийдлээ. Нэг бус хүмүүс ч энэ талаар санал сэтгэгдэлээ хэллээ. Тэд нарт баярлалаа. Read more…

RSS reader

March 30th, 2009 40 comments

128px-feed-iconsvgЭнд амлaсныхаа дагуу хялбархан RSS уншигч хийцгээе. Сайндаа ч биш маргааш XML -ийн тухай хичээл орохдоо энэ жишээг бас үзүүлэх гэж байгаа юм. Сүүлийн үед газар сайгүй бараг бүх сайтууд RSS feed эсвэл ATOM гэх мэт линкүүдтэй болжээ. Энэ бол тухайн сайт дээр гарсан зүйлийг уг сайтруу орохгүй өөрийн уншигч програмаар уншаад байх боломжийг олгож байгаа хэрэг юм. Ийм уншигч програмууд бий. Жишээ нь би Mozilla Thunderbird-ийг е-майл клиент, feed reader-ээ болгон ашигладаг.  Хялбар жишээнд ашиглах RSS нь миний энэ сайтынх болог. Үүний тулд сайтын RSS feedback -ийн URL -Ийг олно. Миний сайтын баруун дээр байгаа феедийн линк нь http://www.soyolerdene.com/index.php/feed гэж байна. Бидний зорилго бол үүнийг PHP ээр уншихад XML буцаж ирэх бөгөөд түүнийг нь форматын дагуу уншаад (parse) хийгээд дэлгэцэнд хэвлээд үзүүлэх явдал юм. Үүний тулд та бүхэн RSS -ийн XML ээр дүрслэгддэг форматыг мэддэг байх хэрэгтэй юм. Энэ тухай http://en.wikipedia.org/wiki/RSS_(file_format) хаягаар холбогдон дэлгэрэнгүй мэдээлэл аваарай. За ингээд хялбар жишээгээ PHP дээр хийе. Read more…

PHP/MySQL 3: Хүснэгтийн мэдээлэл харуулах

March 28th, 2009 17 comments

PHP бараг бүх төрлийн өгөгдлийн сан удирдах системүүдтэй нийцтэй ажиллах чадвартай. Гэвч MySQL -тэй хамгийн нийцтэй хамгийн хурдан ажилладаг. PHP өгөгдлийн сан тус бүртэй ажиллах функцуудын сантай. MySQL -ийн mysql, mysqli гэсэн сангуудтай. PHP 5 -аас өмнөх хувилбаруудад mysql үндсэн санд ордог байсан бол php 5 -аас хойш mysql -ийн санг бусад сангуудын адил суулгадаг болсон. Иймд шаардлагатай сангуудыг анх инсталл хийхдээ эсвэл дараа нь нэмээд суулгачих хэрэгтэй. Read more…

PHP/MySQL 2: phpMyAdmin ашиглах

March 23rd, 2009 27 comments

MySQL-тэй холбогдон ажилладаг олон хэрэгсэл бий. Эдгээрээс вебэд суурилан ажилладаг phpmyadmin -ийг ашиглаж сурах хэрэгтэй. Ер нь веб сайт хийгээд түүнийгээ хост хийхэд mysql баазаа phpmyadmin-аар л ихэвчлэн серверт байрлуулах болон бусад үйлчилгээг хийдэг. Иймд энэ програмыг сайн ашиглаж сурах хэрэгтэй. phpmyadmin эндээс татаж аваад өөрийн локаль хост дээр http://localhost/phpmyadmin гэсэн хаягаар ажилладаг байхаар хуулна. Үүний дараа доорхи хэдэн алхамуудыг хийж гүйцэтгэнэ. Уг нь хуучин 1.х, 2.х хувилбарууд дээрээ ингээд хуулаад л root нь нууцгүй үггүй бол  шууд ажилладаг байсан бол одоо бид нарын ашиглах гэж байгаа 3.х дээр root буюу хамгийн гол хэрэглэгч нь нууц үггүй байвал ажиллахгүй энэ тэр гэсэн тохиргоотой болсон байна. Read more…

Categories: PHP/MySql Tags: , ,

PHP/MySQL 1: MySQL өгөгдлийн сан

March 16th, 2009 32 comments

180px-mysqlsvgМySQL бол хамгийн өргөн хэрэглээтэй нээлттэй эхийн өгөгдлийн сан удирдах програм юм. Өнөөдөр энэ програмыг 11 сая илүү инсталл хийж дэлхийн аварга том сайтууд болох flicker, facebook, wikipedia, google, nokia, youtube ашиглаж байна гэж энд бичсэн байна. Анх 1995 онд зах зээлд гарсан,  c/c++ хэл дээр бичигдсэн. Хамгийн өргөн ашиглагдаж байсан хувилбар нь 2000 онд гарсан 3.23 гэж хувилбар байдаг. Монголчууд бид нар энэ хувилбараас нь эхлэн мэддэг болсон. Үүний дараа 4.0, 4.1 гэсэн хувилбарууд гараад одоо ид хэрэгэгдэж байгаа нь 5.х . Эдгээр сүүлийн хувилбарууд дээр томоохон өгөгдлийн сангийн системүүдэд байдаг view, procedure, trigger гэх мэт зүйлүүд нэмэгдсэн. Бас дэд query бичих боломжтой болсон. Дэд query гэдэг нь select * from tablename1 where id in (select id from tablename2) гэх мэтээр бичих боломжтой болсон. Практикаас харахад олон бичлэгтэй болох тусам sub query энэ тэрийн ажиллага удааширдаг талтай. Хамгийн сүүлд 6.0 alpha  гарсан. Stable version нь 5.1 . Өнгөрсөн жилээс (2008 оноос ) sun microsystems хөгжүүлэлт хийж байгаа боловч ер нь бол шведийн mysql ab компанийх. Дашрамд дурдахад  sun microsystems олонд алдартай нээлттэй эхүүдийг сүүлийн үед их хөгжүүлж байна үүний тод жишээ нь опен оффис энэ 2 юм . Мөн скандиновчууд их айхтар хүмүүс юмаа финландууд нокиа, линиксийг бий болгосон шведүүд mysql-ийг. Товчхондоо нэг иймэрхүү өгөгдлийн сан удирдах систем байна.

Кросс платформ, веб сайтад зориулагдсан өгөгдлийн сан хийх, олон төрөлийн веб програмчлалын хэлүүдтэй найдвартай хурдтай ажилладаг зэрэг шалтгаануудын учир маш өргөн хэрэглээний хэрэгсэл болж чадсан.

Дараагийн бичлэгүүдээр  энэ өгөгдлийн сантай PHP хэл ашиглан холбогдох бааз доторхи хүснэгтийн бичлэгүүдийг гаргаж харуулах, шинэ бичлэг оруулах, байгаа бичлэг засах, устгах гэх мэт энгийн боловчзаавал мэдэж байх үйлдлүүдийн  талаар авч үзнэ.  Миний энэ бичлэг бол анхлан суралцагч нарт зориулсан бөгөөд бие даан сурч байгаа залуучууд, энэ төрлийн хичээл судлаж байгаа оютнуудад зориулсан зүйл юм. Харин хэдийн хөгжүүлэгч болсон хүмүүс  уншиж хайран цагаа бүү үрэгтүн. Энэ бичлэгийг уншиж байгаа залууст өгөгдлийн сан, түүнийг зохион байгуулах тухай мэдлэг чадвар зайлшгүй шаардлагaтай болно.

Categories: PHP/MySql Tags: ,

Zend Framework ашиглаж эхлэв

March 1st, 2009 13 comments

Цагаан сар болж хэд хоног амарсных нэг л барьж авч чадахгүй яваад байсан ZF -ээр юм хийж үзэв. Баазтай холбогдон нэг хүснэгтийн бичлэгүүдийг харуулах, нэмэх, засах, устгах үйлдлүүдийг хийж сурав. Үүний тулд формтой ажиллаж үзэв. Сайхан эд юмаа. Бүх юмаа гараараа хийдэг байсан болоод ч тэрүү их таалагдав. Model-View-Controller бүтэцээр юм хийх овоо дадлага хуримтлуулав. Уламжлалт арга барилаасаа бага ч атугай салж ямар ч гэсэн controller түүний action-ууд, view, layout, model-уудаа ашиглан бага сага юм хийгээд байхаар болов. Гэхдээ сурах юм их байнаа. Яг одоо миний үзэж байгаа юм form decoration. Энэ бол форм болон түүний элементүүдийг өөрийнхөөрөө гаргах боломжийг бий болгодог зүйл нь. Энэ тухай сайхан жишээ энэ тэртэй тайлбар материал эндээсолов. PHP/MySQL эхлэн сурч байгаа залуучуудад шууд ZF -ээр хийхийг заагаад ч өгчихмөөр санагдав. Гэхдээ арай mysql_connect, mysql_select_db энэ тэрийг ярихгүй үсрээд явчихаж болохгүй биз гэж бодогдов.

Categories: PHP/MySql Tags: