Hacking and more...
HaCkinG CulT
Lista Forumurilor Pe Tematici
Hacking and more... | Reguli | Inregistrare | Login

POZE HACKING AND MORE...

Nu sunteti logat.
Nou pe simpatie:
angel_jo din Bucuresti
Femeie
25 ani
Bucuresti
cauta Barbat
25 - 72 ani
Hacking and more... / Web-DesiGn Stuff / Tutorial php Moderat de Shocker
Autor
Mesaj Pagini: 1
epic
User

Inregistrat: acum 18 ani
Postari: 1896


Code:

Ce ar trebui sa stim inainte sa ne apucam sa invatam un limbaj de scripting pentru crearea unei pagini dinamice?
Ei bine, trebuie sa stim faptul ca toate paginile care au un login, se bazeaza pe un limbaj dinamic, server-side. Ce inseamna asta? Asta inseamna ca instructiunile trimise de catre utilizator se vor executa pe server (spre deosebire de java). De exemplu: Cineva se logheaza pe o pagina. Dupa ce apasa butonul de logare, form-ul respectiv, va trimite paginii de prelucrare datele trimise de catre utilizator. Aceasta le va prelucra, dupa care va genera o pagina html in functie de rezultate. Faptul ca paginile dinamice ruleaza server-side este si principalul motiv pentru care nu vedem codul sursa la o pagina PHP de exemplu

Ce avem nevoie?

In primul rand avem nevoie cel mai mult de un server HTTP. Un server HTTP este un "program" sa-i zicem care o data instalat, transforma calculatorul intr-un server de web (pe intelesul n00bilor) care este capabil sa lucreze la nivel de server-side. Mai explicit: Daca instalati un HTTP server, (numele spune tot-ul), acesta va crea un folder numit webroot sau wwwroot in care se afla fisierele serverului dumneavoastra. Daca tastati in IE http://xxx.xxx.xxx.xxx/o_pagina_oarecar ... broot.html , unde xxx.xxx.xxx.xxx reprezinta IP-ul tau, vei regasi pagina o_pagina_oarecare_din_webroot.html ... faza faina e ca toti pot tasta aceasta adresa  pentru a intra in fisierul respectiv. Mai este si faza cu procurarea unui DNS, dar aia o discutam mai tarziu

In al doilea rand avem nevoie de un limbaj de scripting dinamic. In tutorialul meu, va voi invata cum sa lucrati cu PHP (in mare). Pe acesta vi-l puteti procura de pe php.net ... fara PHP instalat, Serverul HTTP nu e capabil sa inteleaga paginile scrise in PHP

In al treilea rand aveti nevoie de un SGBD ( din franceza --  Système de gestion de base de données) pentru a va suporta aplicatiile dinamice. Va sugerez sa folositi MySQL pt ca  usor de folosit si e gratis. Daca vreti ceva mai puternic, folositi Oracle
_______________________________________________________________________________

O data ce le aveti, trebuie sa le configurati. Tineti minte ca fisierul de configurare PHP este php.ini ... aici trebuie sa configurati PHP-ul in functie de necesitatile site-ului
Pentru a porni MySQL-ul, trebuie sa porniti intai server-ul MySQL (mysql-d-nt.exe sau ceva de genu asta) si apoi executati mysql.exe cu paramatrul -u root -p
Ex: mysql -u root -p
_______________________________________________________________________________

Ce trebuie sa stiti inainte de a invata PHP ?

1) HTML la perfectie
2) Notiuni de web security
3)OPERARE WINDOWS 
_______________________________________________________________________________

Introducere in PHP:

Dupa cum am spus, PHP este un limbaj server-side care spre deosebire de HTML, prelucreaza datele inainte de a le afisa.

===========================================================

NOTIUNI GENERALE:

O sesiune PHP incepe cu <?php si se termina cu ?>
Functia de scriere a unui mesaj in PHP este print sau echo
Dupa fiecare instructiune se pune punct si virgula (
Intr-o sesiune PHP, variabilele nu este necesar sa fie declarate la inceput
O variabila se deosebeste de celelalte elemente intr-un mesaj prin simbolul $ . Exemplu de variabile: $variabila1 , $_POST['variabila1'], $_COOKIE['variabila1'] ... unde $_POST reprezinta statutul variabilei ... vedeti voi mai tarziu

Exemplu de script PHP:
<?php
$a="Acesta este primul meu script in PHP";
print $a;
?>

sau 

<?php
$a=15;
$b=20;
$c=$a+$b;
print "<p><b>Rezultatul adunarii numerelor este <i>$c</i></b></p>";
?>

Operatorii in PHP sunt:
+ adunare
- scadere
/impartire
* inmultire
% restul impartirii unui numar (modulo)
++ incrementare
-- decrementare

<?php
phpinfo();
?>
trebuie si asta precizat sa vada omul daca ii merge php-sql-apache cum trebuie.
_______________________________________________________________________________

TIPURI DE VARIABILE IN PHP

In PHP exista 4 tipuri de variabile: numere, siruri, matrice si obiecte

:::Numere:::
Trebuie sa precizez de la inceput ca o variabila nu poate avea un nume format doar din cifre.
Numerele in PHP pot fi manipulate cu usurinta, principalele operatii la care sunt folosite fiind: adunare, scadere, inmultire, impartire, impartire modulo, incrementare respectiv decrementare

Chestii  pt numere:

>formatarea numerelor - se face prin apelarea functiei number_format
De exemplu: avem numarul 3,999 si vrem sa-l aducem la un numar cu doar o zecimala. Procedam: number_format(3.999 , 2);
Trebuie specificat faptul ca PHP se bazeaza dupa sistemul de numerotare american (. la ei este , si , este.)

>generarea numerelor aleatoare(random) - acest lucru se face prin apelare functiei rand();
De exemplu: vrem sa generam un numar oarecare. Procedam: $variabila=rand();
Cazul 2: vrem sa generam un numar cuprins intr-un interval. Scriem in in interiorul functiei limitele intervalului. De ex:
$variabila1=rand(1, 100);
Functia va genera un numar aleator cuprins intre 1 si 100.

:::SIRURI:::

Un sir este o succesiune de caractere, cifre sau simboluri, tratate ca plain text.
exemplu de sir: 
$sir="Sunt d()ar un   face E-mail;;

Pentru a uni 2 siruri se foloseste "."
Exemplu:
$sir1="oleak de text";
$sir2="alta leak de text";
$sir12=$sir1.$sir2;

$sir12 va avea continutul "oleak de textalta leak de text"

GHILIMELELE:
Intr-un sir, de exemplu daca vrem sa afisam un text gata formatat de genul 
<p align="center"><b><font size="1" face="Verdana" color="red">Acesta este fontul meu preferat</font></b></p>
ghilimele din interiorul mesajului ne vor crea probleme deoarece PHP-ul foloseste deja ghilimele pt altceva :P
Pentru a putea folosi ghilimele intr-un mesaj, punem un  inaintea fiecarei ghilimea.. De exemplu, mesajul de mai sus va deveni:

print "<p align="center"><b><font size="1" face="Verdana" color="red">Acesta este fontul meu preferat</font></b></p>"

Inlocuirea unei bucati de text dintr-un sir:
-se face cu ajutroul functiei str_replace
Exemplu:vrem sa inlocuim toate aparitiile cuvantului pizd@ dintr-o injuratura :P :
$injuratura="Du-te-n pizd@ mati de lamer ca nu stii altceva decat sa faci spam pe forum, pizd@ mati de nacrofil";
$inlocuitor="*****";
$mesaj_curat=str_replace 'pizd@', '$inlocuitor','$injuratura);

Criptarea unui sir:
Se face prin 2 metode: una este crypt($variabila). Aceasta cripteaza continutul, dar nu-l mai poate decripta
$encrypt($variabila) - cripteaza o variabila, cu posibilitatea de a o decripta
$decrypt($variabila_criptata) - decripteaza o variabila criptata prin encrypt()

Alte functii:
ucfirst($variabila)- scrie sirul cu prima litera majuscula
trim($variabila)- elimina toate spatiile puse in plus in sir

:::MATRICILE:::

Pe cand numerele si sirurile sunt variabile scalare(ceea ce inseamna ca la un momendat au o singura valoare), o matrice este o selectie de valori, reunite intr-o singura variabila de redefinire
Definirea unei matrici:

$matrice(1=>'1chestie', 2=>'alta chestie', 3=>'ultima chestie');
Sintaxa unei matrice:
Incepe cu semnul dolarului , continua cu o litera sau underscore si se termina cu orice combinatie de litere, cifre sau underscore
In general, cand folositi o matrice, aceasta arata la fel ca orice alta variabila, in afara de  faptul ca trb sa includeti o "cheie" intre [] pt a va referi la un element din interiorul ei. De ex: pentru a scrie 1chestie, procedam: print $matrice[1];

Pentru a sterge o matrice: unset($matrice[x]);
PS: Puteti privi o matrice ca pe un vector din C#

Unirea matricelor - se face prin functia array_merge($matrice1, $matrice2, $matrice3 etc);
Puteti crea si matrice multidimensionale dar despre asta vb mai tarziu

_____________________________________________________________________________   PARTEA A 3-a -- STRUCTURI REPETITIVE
_____________________________________________________________________________

while
=====

Sintaxa:

while(conditie){
actiunea1;
actiunea2;
}

for
===

for($i=0,$i<n,$i++){
actiunea1;
actiunea2;
}

De mentionat functiile break, exit si die care 1data actionate, determina iesirea din structura curenta
_______________________________________________________________________________
_______________________________________________________________________________

PARTEA A 4-a --CONDITIONALELE

IF
==

if(conditie){
actiunea1;
}

SWITCH
======

switch($variabila){
case 1:
if($variabila1<rand()){
$variabila2="valoare";
}
else{
$variabila2="alta valoare";
}
break;

_______________________________________________________________________________PARTEA A 5-a
__________________________________________________________________

MANIPULAREA FORMULARELOR

FORMULÃÂ?R, formulare, s.n. 1. Imprimat cu mai multe spatii albe, care se completeaza în vederea întocmirii unui act, a unui tabel, etc (DEX)

In cazul nostru, in loc de spatiile albe avem textfields, radio butoane, checkbox-uri s.a.m.d.

Un formular incepe cu codul <form> dupa care se introduc input-urile
Aveti grija in definirea si marginirea unui formular deoarece, o data cu apasarea submit-ului, vor fi prelucrate doar input-urile dintre tagurile <form> si </form> . Un input pus inafara acestor tag-uri este doar de decoratie pe pagina 

Exista doua metode de prelucrare a unui formular: GET  si POST. Diferenta dintre GET si POST consta din modul in care informatia din formular este transmisa script-ului care o prelucreaza.Metoda GET transmite toate informatiile adunate ca parte a adresei URL. Metoda POST transmite informatia intr-o maniera invizibila pentru utilizator.
Dezavantajul la metoda GET este faptul ca permite trimiterea unui volum limitat de informatii si ca o pagina ce foloseste ca metoda de trimitere metoda GET poate fi usor "pacalita"
Pentru a transmite datele dintr-un formular catre un script de prelucrare, la inceputul form-ului se precizeaza parametrii action si method:
<form name="formular" action="manipulare.php" method="post">

Trebuie mentionat faptul ca o variabila $variabila1, in urma trimiterii va deveni $_POST['variabila1'] respectiv $_GET['variabila1]
Prelucrarea datelor dintr-un formular:

Pentru a prelucra datele dintr-un formular, se executa urmatorii pasi:
1)Se verifica daca a fost actionat butonul de submit. Pentru a verifica acest lucru, includem o instructiune if:
if(isset($_POST['submit']{ 

2)Se acceseaza variabilele
Dupa cum am mai precizat, o variabila trimisa devine $_POST['variabila'] sau $_GET['variabila'].

3)Se prelucreaza variabilele

4)Se afiseaza rezultatele

NOTA: Pentru a folosi o variabila, trebuie sa puneti la inceputul scriptului verificarea daca a fost actionat butonul de submit. In caz contrar, va da eroare (Undefined index)


la numere si campuri de text, daca vrei sa verifici egalitatea, folosesti "==", iar daca vrei sa modifici valoarea "=". se mai pot folosi  "AND", "OR" si "NOT".
ex.: 
1.if $var==5 alert('Variabila este 5');
2. $var=5



_______________________________________
:< 4 8 15 16 23 42 *execute*
TOATA LUMEA ESTE INVITATA PE NOUL FORUM!

pus acum 18 ani
   
sharky3010
B-Boy

Din: Cluj
Inregistrat: acum 18 ani
Postari: 613
Niste turoriale pt php daca va tre
http://mobile-gsm.evonet.ro/downloads.p ... load_id=33
http://mobile-gsm.evonet.ro/downloads.p ... load_id=32

Daca nu merga alea 2 incercati http://mobile-gsm.evonet.ro/downloads.php?cat_id=9

Modificat de sharky3010 (acum 18 ani)


_______________________________________


pus acum 18 ani
   
TE4L
Super Buruian

Inregistrat: acum 18 ani
Postari: 356
Epic,bun tutorialul,dar TE ROG DIN SUFLET nu mai folosi tagul "code" ca ma exaspereaza asezarea aia ciudata in pagina... De citit il citesc in notepad,dar e mai friendly aici pe forum

_______________________________________


Beware of the buruian( he is ... super )

pus acum 18 ani
   
epic
User

Inregistrat: acum 18 ani
Postari: 1896
darthsion, mi-e mai usor sa pun bbcode decat sa debifez mereu smilie-urile :P

_______________________________________
:< 4 8 15 16 23 42 *execute*
TOATA LUMEA ESTE INVITATA PE NOUL FORUM!

pus acum 18 ani
   
dasda
-

Inregistrat: acum 18 ani
Postari: 265
correct si bv pentru tutorial

_______________________________________
Imperfect ? Where ? ...

pus acum 18 ani
   
Pagini: 1  

Mergi la