RicoRoco - HOME Azure v.116
Witamy, Gość. Zaloguj się lub zarejestruj

Zaloguj się podając nazwę użytkownika, hasło i długość sesji
czacha       czacha       czacha
  HOME   FORUM   HELP SEARCH Kalendarz Download Gallery Chat Zaloguj się Rejestracja  
Template

Links
Recent Top
By Yurek3
[06.01.2011, 16:54:10]

By Yurek3
[31.12.2010, 07:06:05]

By Yurek3
[08.12.2010, 17:21:30]

By Yurek3
[11.11.2010, 05:20:40]

By Yurek3
[04.11.2010, 19:48:16]

By Yurek3
[29.05.2010, 19:00:18]

By Yurek3
[10.05.2010, 05:50:46]

By Yurek3
[06.05.2010, 05:40:10]

By Zoes
[18.12.2009, 08:03:05]

[06.12.2009, 13:55:49]
Ostatni 20 Shout:
01.07.2010, 02:22:18
Witam Smiley
Sorry, ale stronka jest w uaktualnieniu.
Pozdrawiam wszystkich odwiedzających. Smiley
08.12.2008, 21:57:04
Pozdrowionka dla was Smiley
06.12.2008, 12:32:12
Yo! Niedługo poważniejsza aktualizacja forum.. Wymieniam wszystkie pliki! Smiley
08.09.2008, 16:42:15
Jest w necie naprawdę multum sboxów i zawsze polecam kożystać z zewnętrznych, a nie z budowanych.. i wiele za tym przemawia. Smiley
08.09.2008, 16:40:26
Jest standartowo wbudowany do TinyPortal, a TinyPortal, to modyfikacja SMF, która robi z tego forum prawdziwy Portal.
08.09.2008, 13:40:27
mam pytanie skad sciagnac takiego ShoutBox??
17.06.2008, 21:19:34
Yoo
12.06.2008, 07:28:56
Hi Anette i Adrian Smiley
To była pułapka na spamboty. Ale musze teraz zamknąc dla gości. Żeby pisac trzeba się zalogować. Chwilowo nie mogę polowac na spamboty.. brak czasu.. Ale potrzebne mi to do filtra.
Anetta
05.06.2008, 12:14:49
Smiley
gość
04.06.2008, 12:39:23
widać kochają Cię boty xD
gość
29.04.2008, 23:00:17
loco szpoco Cheesy
29.04.2008, 14:33:23
Sbox is online!
Ale.. tym razem zapoluje na spamboty!
Goście mogą korzystać bez przeszkód
26.03.2008, 22:28:03
Sorry z powodu wrednych spambotów, sbox chwilowo dla gosci nieczynny..
22.03.2008, 02:20:55
Zdrowych i Pogodnych Świat WielkiejNocy
21.03.2008, 03:41:44
o jak pusto.. to przez spamerów..
RSS - TP.net
Strony: [1]   Do dołu
 Drukuj 
Autor           Wątek: PHP w przykładach.... dla zielonych  [Przeczytany 14578 razy]
0 users i 1 Gość przegląda ten wątek.
#Paps

Moderator
*****
Offline
Poland Sex:Mężczyzna
Poland


Posty 23


 [19.02.2007, 18:32:15]

Proponuję tutaj zamieszczać proste skrypty php wraz z krótkim wytłumaczeniem o co w nim biega. Chodzi o to, aby pokazać, że język PHP wcale nie jest taki trudny, jakby się mógł wydawać, przez co zachęci webmasterów korzystających do tej pory jedynie z HTML (XHTML) do nauki tego barwnego języka.

Na początek prościutki skrypt kalkulatora

Kalkulator

GeSHi -› Code: [select]
// GeSHi -› [code=php]
<html>
<head>
    <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-2" />
    <title>Kalkulator</title>
</head>
<body>
    <h1>KALKULATOR</h1>
<FORM action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Liczba 1: <INPUT TYPE="text" NAME="liczba1" SIZE="12"> <br>
Liczba 2: <INPUT TYPE="text" NAME="liczba2" SIZE="12"> <br><br>
Wybierz: <br>
dodawanie<INPUT TYPE="radio" NAME="obliczanie" VALUE="dodaj"> &;nbsp;&;nbsp;
odejmowanie<INPUT TYPE="radio" NAME="obliczanie" VALUE="odejmij"> &;nbsp;&;nbsp;
mnozenie<INPUT TYPE="radio" NAME="obliczanie" VALUE="pomnoz"> &;nbsp;&;nbsp;
dzielenie<INPUT TYPE="radio" NAME="obliczanie" VALUE="podziel"> <br> <br>
<INPUT TYPE="submit" VALUE="Oblicz"> &;nbsp;&;nbsp;
<INPUT TYPE="reset" VALUE="Wyczy&#182;ć"> <br>
</FORM>
<hr width="40%" align="LEFT" size="2" />

<?php

$liczba1 = $_POST['liczba1'] ;
$liczba2 = $_POST['liczba2'] ;
$obliczanie = $_POST['obliczanie'] ;

    if($obliczanie=="dodaj") {
        $wynik=$liczba1+$liczba2;
        }
    else if($obliczanie=="odejmij") {
        $wynik=$liczba1-$liczba2;
        }
    else if($obliczanie=="pomnoz") {
        $wynik=$liczba1*$liczba2;
        }
    else if($obliczanie=="podziel") {
        $wynik=$liczba1/$liczba2;
        }

    echo "Wynik: <b>$wynik</b>";

?>
</body>
</html>


Wyjaśnienia:
Użyliśmy tutaj połączenia prostego formularza HTML ze skryptem php. Z oczywistych względów pomijam opis html'a.

Pierwsze co rzuca nam się oczy to atrybut action z wpisem: <?php echo $_SERVER['PHP_SELF']; ?>, gdzie  $_SERVER['PHP_SELF']; oznacza tablicę zmiennych środowiskowych .... ble ble ble. Poprostu chodzi o to, aby akcja była wykonana w obrębie tego pliku. Równie dobrze można by wpisać action="obliczaj.php" i nazwać tak samo cały plik. Efekt będzie taki sam.

Jako że przy pewnych ustawieniach serwera dostęp do danych formularza może być utrudniony, dodajemy krótkie nazwy zmiennych:

$liczba1 = $_POST['liczba1'] ;
$liczba2 = $_POST['liczba2'] ;
$obliczanie = $_POST['obliczanie'] ;


Z kilku powyższych linijek kodu można by zrezygnować, ale wówczas w pliku konfiguracyjnym serwera wartość register_globals musi być ustawiona na on. Niezależnie od tego, jak mamy ustawiony serwer, krótkie nazwy zmiennych proponuję zostawić.

W formularzu zastosowano INPUT TYPE="radio", pozwoli to na wykonanie unikalnego działania, obliczenia.

   if($obliczanie=="dodaj")
    {
    $wynik=$liczba1+$liczba2;
    }
   else if($obliczanie=="odejmij")
    {
    $wynik=$liczba1-$liczba2;
    }


Instrukcje warunkowe if, else if jak sama nazwa wskazuje służą do postawiania warunków. Czyli np. "jeżeli coś tam jest równe czemuś tam to zrób tak i siak. Na naszym przykładzie będzie to: " jeżeli zaznaczono pole dodaj to zsumuj liczbę 1 i 2 i przypisz ją do zmiennej $wynik. Jeżeli zaś wybrano pole odejmij to odejmij liczbę pierwszą  od drugiej i przypisz ją do zmiennej $wynik" itd.
Kilka razy padło słowo "zmienna", pewnie zastanawiasz się co to takiego. Jest to nic innego jak pamięć podręczna przechowująca jakieś dane, w php poprzedzona znakiem $. Zwróć uwagę na nazwy pól w formularzu oraz na nazwy zmiennych - one nie są przypadkowe, bo właśnie w ten sposób mamy dostęp do danych formularza!

echo "Wynik: $wynik"; wyświetli obliczony wcześniej wynik.

Powyższy kod zapisz pod dowolną nazwą ( byle z rozszerzeniem *.php) Smiley i wgraj na serwer. Sprawdź efekt działania.

A tak powinno to wyglądać w formie surowej:





EDIT'ka:

Może fajniej byłoby popatrzyć, jak wygląda to w oryginale..:

Kalkulator by Paps:

[Ostatnia zmiana: 07.05.2008, 17:59:20 by: Rico Roco] IP Zapisane
#Paps

Moderator
*****
Offline
Poland Sex:Mężczyzna
Poland


Posty 23


Odpowiedz#1 [28.03.2007, 01:02:22]

Kilka filmów w odtwarzaczu multimedialnym

GeSHi -› Code: [select]
// GeSHi -› [code=php]
<html>
<head>
    <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-2" />
</head>
<body>

<object type="video/x-ms-wmv" data=" <?php echo $_POST['film']; ?>" width="330" height="275">
<param name="src" value="<?php echo $_POST['film']; ?>">
<param name="autostart" value="false">
<param name="controller" value="true">
</object><br>

<form action="index.php" method="post">

<?php
$katalog = './filmy/';
$katal = opendir($katalog);
while($plik = readdir($katal)) {
    if (($plik!='.')&;&;($plik!='..'))
    {
    echo '<input type="radio" name="film" value="./filmy/'.$plik.'">'.$plik.' <br>';
    }
}
    closedir ($katal);
?>

<input type="submit" value=" wybierz film">
</form>
</body>
</html>


Wyjaśnienia:
W tym przykładzie zastosowany został osadzony obiekt multimedialny (Windows Media Player) + formularz. Oczywiście można użyć dowolnego obiektu multimedialnego, zależnie od potrzeb.
Do pełnego działania potrzebny jest jeszcze pusty katalog o nazwie filmy. Tam właśnie będziemy wrzucać wszystkie filmy, a efekt tego od razu ujrzymy na stronie w postaci pól radio wraz z nazwą filmu.

Zacznijmy od formularza.
action="index.php" method="post"
akcję wykoujemy w pliku index.php i tak powinien być nazwany cały stworzony plik. Można również użyć wspomnianego we wcześniejszym poście <?php echo $_SERVER['PHP_SELF']; ?>

$katalog = './filmy/';
$katal = opendir($katalog);
while($plik = readdir($katal))


Tworzymy zmienną $katalog i przypisujemy do niej nazwę katalogu w którym będą filmy.
Otwieramy katalog "filmy" i przypisujemy do zmiennej $katal
Czytamy otworzony katalog, przypisując ją do zmiennej $plik. Korzystamy z pętli while, aby mieć dostęp do wszystkich plików. Pętla while będzie tak długo pracować aż nie przeczyta wszystkich plików w warunku $plik = readdir($katal).

if (($plik!='.')&&($plik!='..')) Wspomniana wcześniej pętla przeczyta wszystko z katalogu. Z tym że my nie chcemy zobaczyć na naszej stronie kropeczek będących w strukturze katalogu uniksowego.
Jeżeli nie wiadomo o czym pisze, można usunąć wspomnianą linię z kodu. Efekt będzie widoczny Smiley

echo '<input type="radio" name="film" value="./filmy/'.$plik.'">'.$plik.'
';
Wyświetlamy listę pól radio w formularzu.
name="film" przyda się do formularza, bo do tego miejsca będziemy się odwoływać.
value="./filmy/'.$plik.' ścieżka dostępu dla filmu.
'.$plik.' nazwa filmu

closedir ($katal); zamykamy katalog filmy

<?php echo $_POST['film']; ?> wstawiamy w obiekt multimedialny w miejsce gdzie powinna byś ścieżka do pliku. Odwołujemy się tutaj do pola radio które zaznaczy użytkownik.

Oto przykład:


[Ostatnia zmiana: 05.12.2008, 07:12:21 by: Rico Roco] IP Zapisane
PdM

Moderators
*****
Offline
Poland Sex:Mężczyzna
Poland


Posty 7


Odpowiedz#2 [23.05.2007, 20:52:42]

Nie studiowałem jeszcze całych skryptów odtwarzacza i kalkulatora, ale nie bardzo rozumiem, po co wskazanie na wykonywany plik w tagu <form> w atrybucie action. Przecież, gdy będzie on pusty, przeglądarka domyślnie prześle dane do tej samej strony. Tak więc wynik działania skryptu z $_SERVER['PHP_SELF'] i bez będzie dokładnie taki sam.
IP Zapisane
#Paps

Moderator
*****
Offline
Poland Sex:Mężczyzna
Poland


Posty 23


Odpowiedz#3 [24.05.2007, 10:52:47]

Tak, to prawda
zastosowanie pustego atrybutu action="" da identyczny rezultat.
Pytasz po co $_SERVER['PHP_SELF']?
Cały temat jest swojego rodzaju tutorialem, a celem jest podanie pewnej dawki informacji. Ponadto uważam, że dobrym zwyczajem jest jednak wpisanie ścieżki, gdzie ma zostać wykonana akcja i nieważne czy przez $_SERVER['PHP_SELF'] czy też ręczne wklepanie nazwy pliku.

PdM zachęcam do rozwijania tematu, wpisywania kolejnych tutków.

PS
Do wszystkich:
Chciałbym, aby w tym wątku wpisywać tylko tutoriale, dzięki temu zostanie zachowana czytelność.
1. Jeżeli macie jakieś uwagi natury technicznej, proszę najpierw skontaktować się z autorem danego posta via PM.
2. Jeżeli chcecie rozwinąć, zmodyfikować któryś z przykładów, to po prostu załóżcie nowy temat.

IP Zapisane
Strony: [1]   Do góry
 Drukuj 
 
Skocz do:  

Geo Visitors Map  
15.12.2018, 15:01:10