NetLizard
#1
Hammaga salom!
Demak bu mavzu orqali php haqida toliq malumotlarni korib chiqamiz, organamiz, orgatamiz.Faqat php emas, html va js ham albatta.
Uzr English tilini tushunmayman, shu uchun o'zim bilganlarimni batafsil yozaman
Demak Php organishdan oldin nimalarni bilish zarur:
➡HTML
➡CSS
➡JAVASCRIPT
Php nima o'zi?
1. PHP- bu "PHP: Hypertext Preprocessor"
2. PHP- bu keng qollaniladigan, ochiq dasturiy server tili
3. PHP scriptlarida server orqali ish bajariladi
PHP bu mukammal va ko'p qollaniluvchi til. Eng katta blog sistemasi WordPress, eng katta ijtimoiy tarmoqlar: odnoklassniki.ru, facebook.com lar php da tuzilgan.
PHP fayli qanday tuzilgan?
1. Uning kodlari js, css, html va php kodlaridan tashkil topadi.
2. Phpda ish server orqali bajariladi va hosil bolgan natija brauzer ekranida html koddagiday korinish kasb etadi.
3. Php formati ".php" korinishga ega.
PHP orqali nimalar qilish mumkin?
1. Phpda dinamik web kontentlar yaratish
2. Php server orqali fayllarni: yaratishi(create), oqishi(read), ochirishi(delete), yozishi(write), ochishi(open) va yopishi(close) mumkin.
3. Php cookielarni jonatishi va qabul qilishi
4. Databaseni oqishi, yozishi va ozgartirishi
5. Php malumotlarni encrypt qilishi va boshqarishi mumkin.
Nega endi aynan PHP?
1. U multiplatformali(Windows,Linux,Unix, Mac OS X va boshqa.)
2. Php orqali koplab serverlar ishlamoqda(Apache, IIS, NginX va boshqa.)
3. Php bepul uni www.php.netdan yuklashingiz mumkin.
PHP organish boshlash uchun nimalar zarur?
1. Webhosting toping Php va Mysqlli yoki denwer
2. Php ornating, mysql ornating yoki webserver(denwer)
PHP scriptlari "<?php" boshlanib "?>" dan tugaydi:

  1. <?php
  2. // bu yerda sizning kodingiz boladi
  3. ?>

Php kodlari HTML teglarni va oz scriptlarini normal qollab quvvatlaydi.
Masalan:
  1. <!DOCTYPE html>
  2.  
  3. <h1>Mening birinchi sahifam</h1>
  4.  
  5. <?php
  6. echo "Hello World!";
  7. ?>
  8.  
  9. </body>
  10. </html>

Eslatma: php kodlari oxirida har doim ";" belgisi qoyiladi(semicolon)
PHP da kommentlar qoshilishi turlari:
  1. <!DOCTYPE html>
  2.  
  3. <?php
  4. // bu bir satrli komment
  5.  
  6. # bu ham bir satrli
  7.  
  8. /*
  9. bu kop satrli komment
  10. */
  11.  
  12. // Siz kommentlarni har bir kod boshiga yozishingiz mukin, albatta xohlasangiz
  13. $x = 5 /* + 15 */ + 5;
  14. echo $x;
  15. ?>
  16.  
  17. </body>
  18. </html>

PHP- case sensitiv
Unda keywordlar: if, else, while, echo, class, functionslar Case Sensitiv emas.
Qolganlari case sensitiv, yani har xil yozilganlari xar xil korsatiladi.
Bu misolda uch xil "echo" bor va u ekranda uchta "Hello, World" chiqaradi:
  1. <!DOCTYPE html>
  2.  
  3. <?php
  4. ECHO "Hello World!<br>";
  5. echo "Hello World!<br>";
  6. EcHo "Hello World!<br>";
  7. ?>
  8.  
  9. </body>
  10. </html>

PHP da variables(ozgaruvchilar)lar tuzish:
Ozgaruvchilar ozgaruvchi oldidan "$" belgisi qoyib, belgidan keyin soz(ozgaruvchi nomi) orqali qilinadi:
  1. <?php
  2. $txt = "Hello world!";
  3. $x = 5;
  4. $y = 10.5;
  5. ?>

*- bu yerda korib turganingizday "x" va "y" bu ozgaruvchi, oldidagi "$" ozgaruvchi belgisi.
Ozgaruvchilar alfavit harflari(A-Z) tarkib topadi.
Ozgaruvchi boshida doim "$" boladi.
U raqamlardan tashkil topmasligi kerak.
Ozgaruvchi nomi case sensitiv(yani $hello bilan $Hello, $HELLO bular xar xil)
PHP da ekranga biror narsa chiqarish uchun "echo" qollaniladi:
  1. <?php
  2. $txt = "Russia";
  3. echo "I love $txt!";
  4. ?>
  5. yana
  6. <?php
  7. $t=5;
  8. $b=5;
  9. echo "I love $t + $b";
  10. ?>

PHP ozgaruvchilari:
Local
Global
Different
boladi.
GLOBAL Misol uchun:
  1. <?php
  2. $x = 5; // global
  3.  
  4. function myTest() {
  5.     echo "<p>Variable x ichkarida funksiya: $x</p>";
  6. }
  7. myTest();
  8.  
  9. echo "<p>Variable x tashqarida funksiya: $x</p>";
  10. ?>

LOCAL Misol uchun:
  1. <?php
  2. function myTest() {
  3.     $x = 5; // local
  4.     echo "<p>Variable x ichkarida funksiya: $x</p>";
  5. }
  6. myTest();
  7.  
  8. echo "<p>Variable x tashqarida: $x</p>";
  9. ?>

Yani tushunganingizday "function" dan tashqaridagi ozgaruvchi "global". Ichidagisi esa "local".
PHP echo va print statementlar:
ECHO Misol uchun:
  1. <?php
  2. echo "<h2>PHP bu qiziqarli!</h2>";
  3. echo "Hello world!<br>";
  4. echo "Men php o\'rganaman!<br>";
  5. echo "Bu","juda","zo\'r!";
  6. ?>

PRINT Misol uchun:
  1. <?php
  2. print "<h2>PHP bu qiziqarli!</h2>";
  3. print "Hello world!<br>";
  4. print "Men php o\'rganaman!";
  5. ?>

Ertaga yana yozaman.Hozircha shu
NetLizard
#2
Xudoyorbeck, # Xudoyorbeck (27.04.2019 / 11:40)
ilgari Telgramda kanalim bor edi @serverside degan)
Qanal nima aloqasi bor bu yerga , men buni bir yerdan oqib yozyotganim yoq.Sizni yoki boshqani kanalini umrimda korganim yoq.
NetLizard
#3
Hammaga salom.
Demak yana davom ettiramiz.
PHP DATA TYPES:
String
Integer
Float (floating point numbers - also called double)
Boolean
Array
Object
NULL
Resource
PHP String namuna:
  1. <?php
  2. $x = "Hello world!";
  3. $y = 'Hello world!';
  4.  
  5. echo $x;
  6. echo "<br>";
  7. echo $y;
  8. ?>

*- yani matnli ozgaruvchilar, string deb ataladi.
PHP Integer namuna:
  1. <?php
  2. $x = 5985;
  3. var_dump($x);
  4. ?>

*- yani integerda decimal emas boshqalar qollaniladi: -2,147,483,648 va 2,147,483,647.
Integer hech bolmaganda bitta raqamdan tashil topishi.Decimal bolmasligi.
Yuqoridagi namunada "$x" bu integer, PHP var_dump(); funksiya integerga qaytish uchun.
PHP Float namuna:
  1. <?php
  2. $x = 10.365;
  3. var_dump($x);
  4. ?>

PHP Boolean namuna:
$x=true;
$y=false:
*- boolean ikkita true(togri) va false(yolgon) dan tashkil topadi.
PHP Array namuna:
  1. <?php
  2. $cars = array("Volvo","BMW","Toyota");
  3. var_dump($cars);
  4. ?>

*- koryapmizki, bu yerda $cars array, chunki array koplab amallardan iborat.
PHP String function:
Funksiya strlen(); dan iborat, yani string+length=strlen
Bu satrni olchamini, undagi belgilar sonini aniqlaydi va ekranga uzatadi:
  1. <?php
  2. /*bu yerda belgilar 12 ta, sanab koring, Hello=5, probel=1, world!=6*/
  3. echo strlen("Hello world!");
  4. ?>

Funksiya str_word_count(); bu satrdagi sozlar sonini aniqlaydi:
  1. <?php
  2. // bu yerda koryapsiz, Hello va World yani 2 ta soz bor
  3. echo str_word_count("Hello world!");
  4. ?>

Funksiya strrev(); bu funksiya tentaklar uchun, yani u sozni teskari qilib beradi:
  1. <?php
  2. // hosil bolgan soz !dlrow olleH
  3. echo strrev("Hello world!");
  4. ?>

Funksiya strpos(); bu kerakli sozni satrdan topib beradi, world sozini Hello World dan topamiz:
  1. <?php
  2. // 6
  3. echo strpos("Hello world!", "world");
  4. ?>

Funksiya str_replace() string+replace(almashtirish), yani bu tanlangan sozni avvalgi bilan almashtiradi:
Bu yerda world sozi Dollyga almashdi, natija Hello Dolly boldi:
  1. <?php
  2. // Hello Dolly
  3. echo str_replace("world", "Dolly", "Hello world!");
  4. ?>

*- hozircha shu.Ertaga yana yozaman
Тупа адихаю
NetLizard
#4
PHP Operators(operatorlar)
Operatorlar parametrlarga va qiymatlarga operatsiyalarni bajarishda foydalaniladi.
Operator turlari quyidagicha:
Arithmetic operators(Arifmetik)
Assignment operators(assignment)
Comparison operators(Taqqoslash)
Increment/Decrement operators(ortish/kamayish)
Logical operators(Logikal,mantiqiy)
String operators(Satrli)
Array operators(massiv)
PHP Arifmetik operatori:
PHP arifmetik operatorlari qo'shib qo'yish, olib tashlash, ko'paytirish va boshqalar kabi umumiy arifmetik operatsiyalarni bajarish uchun ishlatiladi.
  1. Operator Nomi
  2. + qoshish $x + $y
  3. - ayirish $x - $y
  4. * kopaytirish $x * $y
  5. / bolish $x / $y
  6. % modul $x % $y
  7. ** ornatish $x ** $y (PHP 5.6)

PHP Assignment operatori:
PHP assignment o'zgaruvchiga qiymat yozish uchun ishlatiladi:
  1. Assignment
  2. x = y x = y (Teng)
  3. x += y x = x + y (Qoshish)
  4. x -= y x = x - y (Ayirish)
  5. x *= y x = x * y (Kopaytirish)
  6. x /= y x = x / y (Bolish)
  7. x %= y x = x % y (Modul)

PHP Comparison operatori:
Qiyoslash operatorlari ikki qiymatni (son yoki string) solishtirish uchun ishlatiladi:
  1. Operator Nomi
  2. == Teng $x == $y $x bu $y ga teng
  3. === Bir xil $x === $y $x bu $y ga teng, yoki bir xil
  4. != Teng emas $x != $y$x bu $y ga teng emas
  5. <> Teng emas $x <> $y$x bu $y ga teng emas
  6. !== Bir xil emas $x !== $y $x bu $y teng emas yoki bir xil emas
  7. > Katta$x > $y $x bu $y dan katta
  8. < Kichik $x < $y$x bu $ydan kichik
  9. >= Katta yoki teng $x >= $y $x bu $y dan katta yoki teng
  10. <= Kichik yoki teng $x <= $y$x bu $y dan kichik yoki teng

PHP Increment/Decrement operatori:
Increment ozgaruvchilar qiymatini ortib borishiga, decrement ozgaruvchilar qiymatini kamayib borishi uchun xizmat qiladi:
  1. Operator Nomi
  2. ++$x (Pre-increment) $x bitta ortadi va $x ga qaytadi.
  3. $x++ (Post-increment) $x ga qaytadi, $x bitta ortadi.
  4. --$x (Pre-decrement) $x bitta kamayadi $x ga qaytadi.
  5. $x-- (Post-decrement) $x qaytadi, $x bitta kamayadi

PHP Logical operatori:
PHP mantiqiy operatorlari shartli so'zlarni birlashtirish uchun ishlatiladi.
  1. Operator nomi:
  2. and And(va) $x and $y $x and $y togri
  3. or Or(yoki) $x or $y $x or $y bu togri
  4. xor Xor(xor) $x xor $y $x or $y bu togri
  5. && And(va) $x && $y $x and $y bu togri
  6. || Or(yoki) $x || $y $x or $y togri
  7. ! Not!(Emas) $x $x togri emas

PHP Strings operatori:
PHP ikkita operatorga ega bo'lib, ular strings uchun maxsus mo'ljallangan.
  1. Operator nomi
  2. . Konstentratsiya $txt.$txt2 $txt va $txt2 konsentratsiyasi
  3. .= Assignment Kons. $txt.=$txt2 $txt2 bu $txt ga qoshimcha

PHP Array operatori:
PHP qator operatorlari massivlarni solishtirish uchun ishlatiladi.
  1. Operator Nomi
  2. +Union$x + $y
  3. ==Equality(tenglashtirish) $x == $y
  4. ===Identity(Hisoblash) $x === $y
  5. != Inequality(teng emas) $x != $y
  6. <> Inequality(tenglashtirmaslik) $x<>$y
  7. !== Non-identity(hisoblamaslik) $x !== $y
NetLizard
#5
PHP if,else, elseif statementlar.
if statement- bitta shart to'g'ri bo'lsa, ba'zi amal bajaradi.
if....else statement- agar bitta shart togri, keyingisi xato bolsa amal bajariladi.
if...elseif....else- bunda ikki marta kop amallar bajariladi.
switch statement- bloklardan birini tanlash.
PHP If statement:

Bunda bitta shart togri bolsa, amal bajariladi.
Sintaksis: if (condition) {
    code to be executed if condition is true;
}
  1. <?php
  2. $t = date("H");
  3.  
  4. if ($t < "20") {
  5.     echo "Yaxshi kun!";
  6. }
  7. ?>

*- nima bolganiga tushundingizmi? Bu yerda date("H"); orqali vaqtni aniqladik.
if ($t<"20"){
echo "Yaxshi kun!";
}
yani $t 20 madan kichik boldi, echo "Yaxshi kun!" ekranga chiqdi.
PHP If...else statement.

Bunda avvalgi amal togri bolsa, keyingi amal xato bolishi korsatiladi.
Sibtaksis: if (condition) {
    code to be executed if condition is true;
} else {
    code to be executed if condition is false;
}
  1. <?php
  2. $t = date("H");
  3.  
  4. if ($t < "20") {
  5.     echo "Yaxshi kun!";
  6. } else {
  7.     echo "Ajoyib tun!";
  8. }
  9. ?>

*- nima boldi bu yerda? Qarang, bu yerda avvalgi date("H"); orqali vaqt aniqlandi.
if ($t<"20"){
echo "Yaxshi kun!";
}
// agar $t 20 dan kichik bolsa echo "Yaxshi kun!"
else (
echo "Ajoyib tun!";
}
// agar $t 20 dan katta bolsa echo "Ajoyib tun!" ekranga chiqadi.
PHP if...elseif....else statement.

Sintaksis: if (condition) {
    code to be executed if this condition is true;
} elseif (condition) {
    code to be executed if this condition is true;
} else {
    code to be executed if all conditions are false;
}
  1. <?php
  2. $t = date("H");
  3.  
  4. if ($t < "10") {
  5.     echo "Hayrli tong!";
  6. } elseif ($t < "20") {
  7.     echo "Yaxshi kun!";
  8. } else {
  9.     echo "Ajoyib tun!";
  10. }
  11. ?>

*- yani bu yerda $t 10 dan kichik bolsa "Hayrli kun", $t 20 dan kichik bolsa "Yaxshi kun", $t 20 dan katta bolsa "Ajoyib tun" ekranga chiqadi.
PHP 5 switch Statement

Sintaksis:
switch (n) {
    case label1:
        code to be executed if n=label1;
        break;
    case label2:
        code to be executed if n=label2;
        break;
    case label3:
        code to be executed if n=label3;
        break;
    ...
    default:
        code to be executed if n is different from all labels;
}
  1. <?php
  2. $favcolor = "qizil";
  3.  
  4. switch ($favcolor) {
  5.     case "qizil":
  6.         echo "Sening ranging qizil!";
  7.         break;
  8.     case "ko\'k":
  9.         echo "Sening ranging ko\'k!";
  10.         break;
  11.     case "yashil":
  12.         echo "Sening ranging yashil!";
  13.         break;
  14.     default:
  15.         echo "Sening ranglaring qizil, ko\'k va yashil!";
  16. }
  17. ?>

*- yani bu yerda bloklardan birini tanlasangiz, u amal bajaradi.
Тупа адихаю и пью, до завтра
NetLizard
#6
Hammaga salom!
Bizdan uzoqlashmang.Ertaga birdaniga 3 ta funksiya haqida malumot beriladi.Sizlarga tushunarli bolishi uchun, namuna va qiyoslashni hayotdagi narsalarga boglab yozaman.

Pastdagi fayl, avvalgi yozganlarimni txt formatdagisi:
Biriktirilgan fayllar [1]:
 sdcard.zip (5.34 KB) (99 ↴)
NetLizard
#7
Hammaga salom!.
Post kopaytirmasdan, faqat txt shaklda shu yerga joylayman.Yoki post bilan yozaymi?
ŝჩσჩĵฉჩσฑ
#8
MasterOS, # MasterOS (01.05.2019 / 19:01)
Hammaga salom!.
Post kopaytirmasdan, faqat txt shaklda shu yerga joylayman.Yoki post bilan yozaymi?
Post yaxshiroq.
gi8ri7
#9
textmi postmi hech bo'lmasa bittadan screen tashlab yozing-
NetLizard
#10
Professor, # Professor (01.05.2019 / 19:14)
textmi postmi hech bo'lmasa bittadan screen tashlab yozing-
Скрееен? Уни учун хостингга кириб хар янги код ёзганда скреен килиб охо
Hanov_Dayko
#11
MasterOS, AndroPHP borku oshani ishlatip screen kiling
NetLizard
#12
dayko, # dayko (01.05.2019 / 19:43)
MasterOS, AndroPHP borku oshani ishlatip screen kiling
Uje kallamga keldi shu fikr Penguin Php/Mysql apk yuklayapman.
NetLizard
#13
PHP Functions(funksiyalar).
Funksiyalarga murojaat qilinganda biror shart bajariladi.
Phpda siz ozingizning funksiyalaringizni ham qoshishingiz mumkin.
SINTAKSIS: function functionName() {
    code to be executed;
}
*- yani bu yerda function- bu funksiyaga murojaat, functionName()- bu siz yaratadigan funksiya. {}- bu yerga kod yoziladi.
Eslatma: funksiya nomi yuqori yoki quyi harflardan boshlanadi(raqam emas!)
  1. <?php
  2. function writeMsg() {
  3.     echo "Salom, Dunyo!";
  4. }
  5.  
  6. writeMsg(); // funksiyaga murojaat
  7. ?>

*- funksiya nomi case-sensitive emas, unda katta va kichik harfni ahamiyati yo'q.
PHP Function Arguments.
Argumentlar bu funksiya ichiga yoziladi, ular xuddi massivdek korinishga ega.
  1. <?php
  2. function familyName($fname) {
  3.     echo "$fname Refsnes.<br>";
  4. }
  5.  
  6. familyName("Jani");
  7. familyName("Hege");
  8. familyName("Stale");
  9. familyName("Kai Jim");
  10. familyName("Borge");
  11. ?>

*- nima boldi bu yerda? Bu yerda function familyName() orqali funksiya tuzdik.Qavs ichidagi $fname- bu argument.
Php Default Argument value.
Bu orqali siz ozingiz xohlagan argumentlar sonini belgilaysiz.
  1. <?php
  2. function setHeight($minheight = 50) {
  3.     echo "The height is : $minheight <br>";
  4. }
  5.  
  6. setHeight(350);
  7. setHeight(); // xohlasangiz 50 qiling
  8. setHeight(135);
  9. setHeight(80);
  10. ?>

*- bu yerda setHeight() orqali argumentlarni aniqladik, u minimal 50 boldi.
Php Functions-Returning values.
Bu orqali siz kerakli shartga qaytasiz.
  1. <?php
  2. function sum($x, $y) {
  3.     $z = $x + $y;
  4.     return $z;
  5. }
  6.  
  7. echo "5 + 10 = " . sum(5, 10) . "<br>";
  8. echo "7 + 13 = " . sum(7, 13) . "<br>";
  9. echo "2 + 4 = " . sum(2, 4);
  10. ?>

*- bu yerda return $z; yani $x + $y ga qaytiladi.
PHP Superglobals.
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
*******
$GLOBALS- bu orqali siz global ozgaruvchilarga php kodni qayerida bolishidan qatiy nazar ulana olasiz.
Global ozgaruvchiga php kodda $GLOBALS[index] orqali ulanasiz.
-----------
$_REQUEST.
Bu orqali siz formlarda foydalanishingiz mumkin.
  1. <html>
  2. <body>
  3.  
  4. <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
  5.   Nomi: <input type="text" name="fname">
  6.   <input type="submit">
  7. </form>
  8.  
  9. <?php
  10. if ($_SERVER["REQUEST_METHOD"] == "POST") {
  11.     // inputdagi malumotlarni jamlash
  12.     $name = $_REQUEST['fname'];
  13.     if (empty($name)) {
  14.         echo "Nomi bosh bolmasligi kerak";
  15.     } else {
  16.         echo $name;
  17.     }
  18. }
  19. ?>

*- bu yerda inputga nomini yozasiz va submit bosilgach u post method orqali kerakli malumotni uzatadi.Yuqorida koryapmizki nomini kiritmasangiz echo "Nomi bosh bolmasligi kerak"; yozuvi chiqadi, kiritgan bolsangiz echo $name chiqadi.
------
$_GET
Bu ham yuqoridagi kabi formlarda qollaniladi.$_GET malumotlarni toplab uni URLga uzatadi.
  1. <html>
  2. <body>
  3.  
  4. <a href="test_get.php?subject=PHP&web=sever.ru">Test $GET</a>
  5.  
  6. </body>
  7. </html>

*- bu xuddi konfetkaga oxshagan.Yani bu yerda Test $GET bosilsa siz test_get.php?subject=PHP&web=sever.ruga get sorov yuborasiz.
Eslatma: Php $_GET va $_POST bu supergloballar formdagi malumotni jamlab jonatish va qabul qilish uchun ishlatiladi.
Php Simple Form
  1. <html>
  2. <body>
  3.  
  4. <form action="welcome.php" method="post">
  5. Nomi: <input type="text" name="name"><br>
  6. E-mail: <input type="text" name="email"><br>
  7. <input type="submit">
  8. </form>
  9.  
  10. </body>
  11. </html>

*- yani bu yerda forma toldirilib submit bosilgach u welcome.phpga HTTP POST metod jonatadi.
WELCOME.PHP
  1. <html>
  2. <body>
  3.  
  4. Salom <?php echo $_POST["name"]; ?><br>
  5. Sizning email: <?php echo $_POST["email"]; ?>
  6.  
  7. </body>
  8. </html>

*- nima boldi bu yerda? bu yerda avvalgi formda yozgan nomimiz va emailimiz $_POST orqali aniqlanib welcome.phpda chiqarildi.
Bu xuddi siz biror saytga kirganda login va parol yozsangiz, keyin "Assalom, User" kabiga oxshagan.
GET vs. POST
$_GET- bu massiv ozgaruvchilarini ushbu URLga yuborish uchun.
$_POST- bu esa massiv ozgaruvchilarini HTTP POST metodda jonatishga.
NIMA UCHUN GET?
GET- bu barchaga korinuvchi(visible to everyone) yani unda ozgaruvchilar malumotini jonatish limitlangan.U orqali 2000 ga yaqin harakterli malumot jonatish mumkin.
Eslatma: Get bu parol, login, email va boshqalarni jonatish uchun.
NIMA UCHUN POST?
POST- bu esa boshqalarga korinmaydi(invisible to others) yani unda cheklanmagan miqdorda malumot yuborish mumkin.
---------
PHP Form Validation.
Bu sizning saytingizni hacker va spamerlardan saqlash uchun.Unda standard quyidagicha:
Name- Faqat harflar va taqiqlanmagan simvollar mumkin.
E-mail- Faqat @(kuchukcha) dan iborat va email adres mumkin.Masalan: example@hello.ru
Website- Faqat togri yozilgan sayt mumkin.Masalan: www.hello.com yoki http://hello.com
Comment- Multi matn yozish, komment.Masalan ozi haqida, qiziqishi va hokazo.
Gender- Erkak yoki Ayolni tanlash.Bittasi tanlanadi.
Endi shu yuqoridagini HTML kodida koramiz:
  1. Name: <input type="text" name="name">
  2. E-mail: <input type="text" name="email">
  3. Website: <input type="text" name="website">
  4. Comment: <textarea name="comment" rows="5" cols="40"></textarea>
  5. <input type="radio" name="gender" value="female">Female
  6. <input type="radio" name="gender" value="male">Male

Endi bunga qarang:
  1. <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

*- $_SERVER["PHP_SELF"] qayerdan keldi deyapsizmi? Bu funksiya form malumotini kerakli sahifaga jonatishga kerak.
Unda htmlspecialchars nima? Bu HTML maxsus harakterlarini kerakli talqin qilish uchun.Yani unda "<" ni &lt ga ">" ni &gt ga almashtiradi.Bu esa XSSni oldini oladi.
Eslatma: Kopchilik hostinglar shu usulni qollaydi, unda ",'.!?+-*(){} kabilarni maxsus HTML harakterga almashtiradi.
PHP Required Fielda.
Bu toldirilishi shart bolgan va xato toldirilsa xato xabari chiqadigan qilish uchun.
Kelong kodni koramiz:
  1. <?php
  2. // massivlarni qoshish va ularni bosh qoldirish
  3. $nameErr = $emailErr = $genderErr = $websiteErr = "";
  4. $name = $email = $gender = $comment = $website = "";
  5.  
  6. if ($_SERVER["REQUEST_METHOD"] == "POST") {
  7.   if (empty($_POST["name"])) {
  8.     $nameErr = "Nom yozing!";
  9.   } else {
  10.     $name = test_input($_POST["name"]);
  11.   }
  12.  
  13.   if (empty($_POST["email"])) {
  14.     $emailErr = "Email yozmading";
  15.   } else {
  16.     $email = test_input($_POST["email"]);
  17.   }
  18.  
  19.   if (empty($_POST["website"])) {
  20.     $website = "";
  21.   } else {
  22.     $website = test_input($_POST["website"]);
  23.   }
  24.  
  25.   if (empty($_POST["comment"])) {
  26.     $comment = "";
  27.   } else {
  28.     $comment = test_input($_POST["comment"]);
  29.   }
  30.  
  31.   if (empty($_POST["gender"])) {
  32.     $genderErr = "Jinsni tanlang!";
  33.   } else {
  34.     $gender = test_input($_POST["gender"]);
  35.   }
  36. }
  37. ?>

PHP Display the error messages.
Xato xabarini ekranda aks ettirish.
  1. <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
  2.  
  3. Name: <input type="text" name="name">
  4. <span class="error">* <?php echo $nameErr;?></span>
  5. <br><br>
  6. E-mail:
  7. <input type="text" name="email">
  8. <span class="error">* <?php echo $emailErr;?></span>
  9. <br><br>
  10. Website:
  11. <input type="text" name="website">
  12. <span class="error"><?php echo $websiteErr;?></span>
  13. <br><br>
  14. Comment: <textarea name="comment" rows="5" cols="40"></textarea>
  15. <br><br>
  16. Gender:
  17. <input type="radio" name="gender" value="female">Female
  18. <input type="radio" name="gender" value="male">Male
  19. <span class="error">* <?php echo $genderErr;?></span>
  20. <br><br>
  21. <input type="submit" name="submit" value="Submit">
  22.  
  23. </form>

PHP Name validation.
Bu orqali yozilgan ism togri ekanligini aniqlaymiz.
  1. $name = test_input($_POST["name"]);
  2. if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
  3.   $nameErr = "Faqat harflar va belgilangan simvollar mumkin!";
  4. }

*- nima boldi bu yerda? Bu yerda preg_match() orqali belgilangan harflarga ruhsat berdik.Agar belgilanganlari bolmasa ekranda xato chiqadi.
Всё я устал. До завтра!
NetLizard
#14
PHP - Validate E-mail
Bu orqali formdagi email togri yoki notogriligini aniqlaymiz.
  1. $email = test_input($_POST["email"]);
  2. if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
  3.   $emailErr = "Email xato yozildi";
  4. }

*- bu yerda filter_var() bu belgilangan togri emailga ruhsat beradi.
PHP - Validate URL
Bu sayt manzili togriligini aniqlaydi.
  1. $website = test_input($_POST["website"]);
  2. if (!preg_match("/\b(??:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
  3.   $websiteErr = "Invalid URL";
  4. }

Yuqoridagi barchasini qoshib tayyorlangan script:
  1. <?php
  2. // massiv
  3. $nameErr = $emailErr = $genderErr = $websiteErr = "";
  4. $name = $email = $gender = $comment = $website = "";
  5.  
  6. if ($_SERVER["REQUEST_METHOD"] == "POST") {
  7.   if (empty($_POST["name"])) {
  8.     $nameErr = "Nomini yozing";
  9.   } else {
  10.     $name = test_input($_POST["name"]);
  11.     // nomni tekshirish
  12.     if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
  13.       $nameErr = "Faqat harf va belgilangan simvollar";
  14.     }
  15.   }
  16.  
  17.   if (empty($_POST["email"])) {
  18.     $emailErr = "Email yozish kerak";
  19.   } else {
  20.     $email = test_input($_POST["email"]);
  21.     // email togri formatdaligini tekshiramiz
  22.     if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
  23.       $emailErr = "Email xato";
  24.     }
  25.   }
  26.  
  27.   if (empty($_POST["website"])) {
  28.     $website = "";
  29.   } else {
  30.     $website = test_input($_POST["website"]);
  31.     // URLni tekshirish
  32.     if (!preg_match("/\b(??:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
  33.       $websiteErr = "URL notogri";
  34.     }
  35.   }
  36.  
  37.   if (empty($_POST["comment"])) {
  38.     $comment = "";
  39.   } else {
  40.     $comment = test_input($_POST["comment"]);
  41.   }
  42.  
  43.   if (empty($_POST["gender"])) {
  44.     $genderErr = "Jins tanlang";
  45.   } else {
  46.     $gender = test_input($_POST["gender"]);
  47.   }
  48. }
  49. ?>
MR_BaxtiyoR
#15
Dastur.uz dagi elektron darslik asosida tayyorlanayaptiku bu ))))
NetLizard
#16
MR_BaxtiyoR, # MR_BaxtiyoR (03.05.2019 / 09:28)
Dastur.uz dagi elektron darslik asosida tayyorlanayaptiku bu ))))
Чива, чива? Дастур.узга тупурганим бор!
Вот мен буни озим билганим + В3Счоолс дан олиб ёзяпман.
Ещё разок дастур.узга тупураман.
Biriktirilgan fayllar [1]:
 screen_20190506_1934.jpg (77.18 KB) (88 ↴)
NetLizard
#17
Во-первих, мен бировникини копировать килмайман.
Во-вторих, мен озим мустакил килаяпман.
Во-третих, мен дастур.уз, пастур.уз деган сайтларга кирмайман.Киришниям хохламайман!
MR_BaxtiyoR
#18
Muomalangiz chotkiy ekana a?
Shunchaki aytdim, Sababi dastur.uz dagi qo'llanma ham shunaqa,
Ikkalanglarni ustozlaringiz bitta ekanda))
NetLizard
#19
MR_BaxtiyoR, # MR_BaxtiyoR (06.05.2019 / 20:22)
Muomalangiz chotkiy ekana a?
Shunchaki aytdim, Sababi dastur.uz dagi qo'llanma ham shunaqa,
Ikkalanglarni ustozlaringiz bitta ekanda))
Муомала бу шахсий!
Мен унака сайт танимайман. Уни ким очганиниям.
Биров келади тгда каналим бор дейди, биров дастур.уз биров яна бир нарса.Канака канал, канака сайт. Колидан келса таржима килиб ёзсин ана мен хам бир жавоб ёзайчи
Hanov_Dayko
#20
MasterOS, #14 dagi postda ikita smayl bor ular kodlar orasidan chikipdi shekilli a?
1 daqiqa dan keyin yozdi:
(??https?|ftp):\/\/|www\.)

Kunduzi: 11°C

29 Mar 2024 yil
Joylashuv aniqlanmadi