Jump to content

návod Začínáme s CPF - práce s formuláři


cniry

Recommended Posts

V CPF lze jednotlivé prvkdy formulářů vykreslovat, nebo kontrolovat.

Uděláme si jednoduchý formulář pro přihlášení.

Nejprve si ukážeme jak vykreslovat:

 

<?php
  require "cpf/loader.php";
?>

<?php
   echo "Přihlašovací jméno: " . $cpf->form->input("text", "login");

   echo "
Heslo: " . $cpf->form->input("password", "heslo");

   echo "
" . $cpf->form->input("submit", "submitbutt", "Přihlásit se");
?>

 

V CPF vytváříme formulářové prvky pomocí volání $cpf->form->input( TYP, JMÉNO, OBSAH )

 

TYP formulářového prvku

text - klasické textové políčko

password - políčko pro heslo

button - tlačítko (toto není odesílací tlačítko)

submit - odesílací tlačítko

hidden - skryté pole

textarea - textarea :d

checkbox - zaškrtávací pole

 

obsah

hodnota pro obsah je nepovinná.

Obsah je povinný jen u typu select, kde je obsahem array() pole

 

 

Kontrola se pak provádí přes funkci

$cpf->form->check($podmínka, $proměnná )

Funkce vrací TRUE - prošlo, FALSE - neprošlo.

 

Seznam podmínek:

vyplneno - zkontroluje jestli je pole vyplněné

cislo - zkontroluje jestli jste zadali číslo

email - zkontroluje jestli jste zadal správný email

url - zkontroluje jestli je v proměnné URL adresa

 

 

A Teď to celé zkusíme se zpracováním dat:

<?php
  require "cpf/loader.php";

function on_submit($cpf) //funkce co se provadi jen po odeslani formulare. vola se sama
{
   global $input_err;
   $input_err['send_data'] = $_POST; //v priade chyby se jiz vyplnene informace objevi ve formulari

   $i = 0; //a zaciname s kontrolou

   $jmeno = 'login'; //jmeno policka ktere kontrolujeme
   if(! $cpf->form->check("vyplneno", $_POST[$jmeno] ) )
   {
       $input_err[$jmeno]['extra'] = ' style="background-color: red;"';      //extra vlastnost ktera se nastavi policku ktere neni spravne vyplneno
       $input_err[$jmeno]['text']  = "Důležitá položka. Vyplňte ji prosím.";   //text u policka
       $input_err[$jmeno]['abord'] = true;
       $i = 1;
   }
   else
   {
       $_POST[$jmeno] = mysql_escape_string( $_POST[$jmeno] );
   }

   //a jeste heslo
   $jmeno = 'heslo'; //jmeno policka ktere kontrolujeme
   if(! $cpf->form->check("vyplneno", $_POST[$jmeno] ) )
   {
       $input_err[$jmeno]['extra'] = ' style="background-color: red;"';      //extra vlastnost ktera se nastavi policku ktere neni spravne vyplneno
       $input_err[$jmeno]['text']  = "Důležitá položka. Vyplňte ji prosím.";   //text u policka
       $input_err[$jmeno]['abord'] = true;
       $i = 1;
   }
   else
   {
       $_POST[$jmeno] = mysql_escape_string( $_POST[$jmeno] );
   }

   if( $i==1 ) return false; //pokud neco neproslo, nepokracuj


   /* ulozeni dat do MySQL necham na vas.
   muzete vyuzit napriklad [url=http://cpf.cniry.cz/index.php?title=Mysql.lib.php]MySQL.lib[/url] nebo pouzit klasicke mysql_connect nebo ulozeni do souboru. to uz je ciste na vas */

   echo "všechno prošlo. díky za registraci :D";
}

?>

<?php
   echo "Přihlašovací jméno: " . $cpf->form->input("text", "login");

   echo "
Heslo: " . $cpf->form->input("password", "heslo");

   echo "
" . $cpf->form->input("submit", "submitbutt", "Přihlásit se");
?>

 

Možná vám mohl dnešní kód připadat komplikovaný, možná jednoduchý. Doufám že bude více těch kterým příjde snadný :d Tak zase příště si ukážeme konečně žhavé téma a tím je práce MySQL. Největší přednost celého Cniry Personal Framework.

 

 

 

Ukázka celého našeho dnešního snažení :d je zde: http://cpf.cniry.cz/ukazky/form-1.php

Další ukázka ověřování formulářů: http://cpf.cniry.cz/ukazky/form-2.php

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...