divendres, 21 de maig del 2010

PHP Forum

La primera idea va ser fer un forum de "Temes -> Posts", pero després vem decidir fer una estructura diferent:

Carpeta -> Tema -> Forum

La carpeta només podrá ser modificada/creada o esborrada per un administrador de la web.

dimarts, 18 de maig del 2010

Formulari de registre y Validació

Després d'acabar el formulari de Login, ens hem dividit, un a fer el formulari de registre, i l'altre amb el Forum (tot fet a má desde 0).

En el formulari de Registre, hem utilitzat una llibrería de JavaScript anomenada "LiveValidation", que et permet d'una manera bastante simple, utilitzant JavaScript, validar el formulari en temps real avans d'enviar-lo, així tenim la validació per part del client.

No obstant, no era suficient, així que també fem una validació del costat del servidor amb consultes PHP i funcions específiques que prohibeixen l'entrada de carácters especials, que podrien ser maliciosos, com per exemple, SQL injection, una manera molt facil de hackejar una base de dades.



dilluns, 17 de maig del 2010

PHP Cistella

El primer plantejament per fer la cistella ha sigut amb consultes i introduccions a la base de dades, pero al final, hem optat per fer-ho tot per sessions, hem descobert funcions molt últils a l'hora de guardar dades a una variable de sessio, com per exemple:

$Vector = explode("Separador",$Valor);

Ens permet generar un vector ($Vector) que contindrá en cada posició, lo que contingui la variable "$Valor" en cada delimitador (Separador) que es el parámetre que se l'hi pasa, exemple:

La variable $Valor conté: Super,Guay,Del,Paraguay

Si fem un explode d'aquesta forma:

$Vector = explode(",",$Valor);

Tindrem com a resultat:

$Vector[0] = Super
$Vector[1] = Guay
$Vector[2] = Del
$Vector[3] = Paraguay

Molt últl per pasar varis valors diferents entre variables de sessió, tot utilitzant "Foreach" per saber quants valors tenim a la variable.


implode();

Es lo mateix que "Expode" pero ho fa al revés, nosaltres tenim per exemple un vector que conté els valors:

$Vector[0] = Super
$Vector[1] = Guay
$Vector[2] = Del
$Vector[3] = Paraguay

Si fem $SuperGuay = implode(",",$Vector);

Tindríem aquest resultat:

$Superguay = Super,Guay,Del,Paraguay

Amb implode i explode, es poden fer moltes modificacions, pero tot aixó no sería del tot util sense la funció "unset()" i "array_values()":

unset -> Esborra el valor de la posició d'un array.

Per exemple:

unset($Vector[0]) esborraría : "Super"

Problemes: El valor s'esborra, pero la posició del vector queda buida, i per aixó tenim "array_values", que fá el següent:
Ara tenim el vector $Vector de la següent manera:

$Vector[0] = "";
$Vector[1] = Guay
$Vector[2] = Del
$Vector[3] = Paraguay

Si fem:
array_values($Vector);

Ens quedaría:

$Vector[0] = Guay
$Vector[1] = Del
$Vector[2] = Paraguay

Aixi tenim el vector sense cap valor "NULL" i podem seguir tractan-lo.