b2 t2 variables

13
2.03.22 1 PHP – променливи Тема 2

Upload: asiya-petrova

Post on 16-Jan-2017

68 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: B2 t2 variables

1.05.23 1

PHP – променливи

Тема 2

Page 2: B2 t2 variables

1.05.23 2

Съдържание 1.Променливи.Видове 2. Enviroment variables

-"променливи на средата" и на сървъра

3. “Изпращане” на променлива

Page 3: B2 t2 variables

1.05.23 3

Променливи Едно от най-големите предимства на PHP е

възможността му да работи с променливи; Променливата е “склад, хранилище”. Ние поставяме

“неща” в нашия склад, и затова можем да ги ползваме, обработваме-променяме.

Нещата които искаме да складираме са числа и текст.

Променливата се състои от две "части“ Име; и Стойност.

Обръщайки се към името на променливата можем да й присвоим нова стойност или да получим достъп до текущата.

Page 4: B2 t2 variables

1.05.23 4

PHP -Променливиособености

не се декларират предварително; създаването на променливата става в

момента, в който и присвоявате стойност;

не е не необходимо да се указва типа на информацията – string, int, float и др. – PHP само определя типа.

името на променливата винаги е предшествано от знак за долар - $.

Page 5: B2 t2 variables

1.05.23 5

Пример ../uroci/t2/ex21.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head> <meta http-equiv="content-type" content="text/html; charset=UTF-

8"> <meta name="generator" content="PSPad editor, www.pspad.com">

<title>ex21</title> </head><BODY><?php$ime="Иван Петров";echo "<h1>$ime</h1>";?></BODY><HTML>

Page 6: B2 t2 variables

1.05.23 6

Свързване на променливи

../uroci/t2/ex22.php

<?php $txt1="Hello World!"; $txt2="What a nice day!"; echo $txt1 . " " . $txt2;?>

//Резултата би трябвало да бъде: Hello World! What a nice day!

Page 7: B2 t2 variables

1.05.23 7

Вградени функции за тип на променлива - определят типа на дадена променлива is_bool() - връща истина ако променливата е булева

(истина/лъжа); is_float() - връща истина ако променливата съдържа

число с плаваща запетая; is_integer() - връща истина ако променливата е цяло

число; is_string() - връща истина ако променливата е низ от

символи; is_array() - връща истина ако променливата е масив; is_object() - връща истина ако променливата е обект;

Page 8: B2 t2 variables

1.05.23 8

2. Enviroment variables -"променливи на средата" и на сървъра – променливи, поддържани от сървъра и PHP интерпретатора, описващи текущото състояние на връзката и характеристиките на двете страни в нея -

клиент и сървър. ../uroci/t2/ex23.php <?php phpinfo(); ?>

Използвахме две от тези промливи - HTTP_USER_AGENT и $HTTP_REFERER, с чиято помощ открихме с какъв браузър посетителят разглежда страницата и от къде е дошъл на нея.

Събирането и анализирането на подобни данни е безкрайно полезно за всеки web разработчик.

Така можете да научите кой сайт ви праща най-много посетители и да организирате рекламната си стратегия, наблягайки на него.

Полезно е, също и да следите кои от страниците в сайта ви се посещават повече и предизвикват по-голям интерес, така че да наблегнете на тях и на подобен вид съдържание в по-нататъчното изграждане на сайта.

info.php, отворете в браузъра си.

Ще видите най-важната информация за PHP инсталацията, както и всички създадени в текущата връзка променливи на средата на PHP и сървъра. Изписаното в левите полета на таблицата представляват имената на променливите, а в дясната част - стойностите им.

Page 9: B2 t2 variables

1.05.23 9

../uroci/t2/ex24.php

<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"><TITLE>Здравей!</TITLE></HEAD><BODY><h2><?php$data=date("d-m-Y");$chas=date("H:i:s");$browser=$_SERVER['HTTP_USER_AGENT'];$ref=$_SERVER["REMOTE_PORT"];$user_ip=$_SERVER['REMOTE_ADDR'];$forw=$_SERVER['HTTP_X_FORWARDED_FOR'];$serv=$_SERVER['SERVER_SOFTWARE'];$rem_host=gethostbyaddr($user_ip);$comp_name=$_ENV['USERDOMAIN'];echo ("<b>Здравейте,<br><br>Добре дошли в сайта на PC<i

style='color:red '> $comp_name</i> !</b><br>");echo ("Сега е $chas часа, по моя часовник, на $data, а Вие

дойдохте тук от port:($ref) с $browser<br>");echo ("Вашето IP е $user_ip($forw) - $rem_host.

<br><p>Поздрави: <br>$serv");

?></h2></BODY></HTML>

Page 10: B2 t2 variables

1.05.23 10

Описание на използваните глобални променливи в примера

$HTTP_USER_AGENT -винаги съдържа идентификационната информация на браузъра;

$HTTP_REFERER - съдържа URL на мястото, от което идва посетителят;

$REMOTE_ADDR - съдържа в себе си IP адреса на посетителя;

$HTTP_X_FORWARDED_FOR - съдържа в себе си IP адреса на посетителя зад прокси сървър;

Когато множество потребители се намират зад едно или повече прокси сървъри.

$SERVER_SOFTWARE - информация за сървърния софтуер - версия на сървъра и операционна система.

Използването на последните две описани променливи на средата е полезно, когато давате достъп до чувствителна информация или по една или друга причина е важно да знаете кой точно е отсреща.

Така можете да ограничите достъпа до сайта си на хора, които нарушават добрия тон в него или да подсигурите сигурността му при e-commerce приложения.

Page 11: B2 t2 variables

1.05.23 11

3. “Изпращане” на променлива Методи:

POST; GET; и чрез cookies;

Page 12: B2 t2 variables

1.05.23 12

Пример../uroci/t2/index.html

<html> <head> <meta http-equiv="content-type" content="text/html;

charset=utf-8"> <meta name="generator" content="PSPad editor, www.pspad.com">

<title></title> </head> <body><p>Здравейте! Моля попълнете следната

информация : <br><form action="show.php"

method="post">Вашето име : <input type="text"

name="ime" /><br>Възраст : <input type="text"

name="godini" /><br> <input type="submit"

value="Изпрати!" /></form></p></body></html>

../uroci/t2/show.php

<?php//show.php

$a=$_POST['ime'];$b=$_POST['godini'];

echo "Здравейте, $a и вие сте на $b години!";

?>

Page 13: B2 t2 variables

1.05.23 13

URL кодиране файл.php?

име1=стойност1&име2=стойност2&име3=стойност3;

show.php?ime=Иван_Петров&godini=25;

echo '<a href="show.php?'.urlencode (ime=Иван Петров&godini=25)