Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [klasa]formularz, php5
Spawnm
post
Post #1





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




download

Wczoraj w wolnej chwili takie coś napisałem ... i postanowiłem że się podzielę (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Klasa ma za zadanie generowanie formularza html .

Użycie :

klasę zaczynamy tak:
  1. <?php
  2. $form=new form($action,$method,$enctype,$fieldset,$style);
  3. ?>


przesłanie danych nie jest obowiązkowe , jeśli nic nie wpiszemy form będzie przesyłać dane postem do obecnej strony.

inna forma startu klasy to danie tablicy z danymi:
  1. <?php
  2. $dane=array(
  3. 'action'=>'index.php',
  4. 'method'=>'post',
  5. 'enctype'=>'multipart/form-data',
  6. 'fieldset'=>true,
  7. 'style'=>'border: 1px dotted black'
  8. );
  9. $form=new form($dane);
  10. ?>


do formularza możemy dodać:
legendę:
$form->addLegend('tytuł');

//<label>
$form->addLabel($text,$stylOpcjonalny);

inputy dodajmy przez funkcję addInput(); , dane możemy przesłać na 2 sposoby -> przez tablicę lub standardowe przekazanie parametrów :
//addInput($type,$name=null,$value=null,$style=null,$html=null,$label=null)
//w inpucie jest możliwość wywołania <label> dzięki czemu będzie w przesłanych tagach html
  1. <?php
  2. $in=array(
  3.  'type'=>'text',
  4.  'name'=>'jeden',
  5.  'value'=>'treść',
  6.  'style'=>'id="mojeId"',
  7.  'html'=>array('<p>','</p>'),
  8.  'label'=>array('Imie: ','style="font-size:24px"')
  9. );
  10. $form->addInput($in);
  11. $form->addInput('text', 'jeden','treść');
  12. ?>


dając opcjonalny parametr html dostajemy przez i za inputem tagi html.

textarea:
również parametry możemy przesłać na 2 sposoby.
//addArea($name,$value=null,$style=null,$rows=null,$cols=null,$html=null);
np:
$form->addArea('arenka',null,null,20,40);

select
2 typy przesyłania danych
//addSelect($name,$style=null,$html=null);

opcje dodajemy przez:
//addOption($value,$title,$selected=false)
//też można na 2 sposoby
  1. <?php
  2. $form->addSelect('mine', null, array('<p>','</p>') );
  3. $form->addOption(1,'jeden');
  4. $form->addOption(2,'dwa',true);
  5. $form->addOption(3,'trzy');
  6. ?>


select zamykamy funkcją closeSelect() jednak nie jest to wymagane.

na koniec
aby otrzymać nasz gotowy formularz używamy funkcji getForm(); :
echo $form->getForm();


Jakiś przykładowy form:

  1. <?php
  2. $form=new form('loguj.php','post',true);
  3. $form->addLegend('panel logowania');
  4. $in=array(
  5.  'type'=>'text',
  6.  'name'=>'imie',
  7.  'value'=>$_POST['imie'],
  8.  'html'=>array('<div>','</div>'),
  9.  'label'=>array('Imie: ')
  10. );
  11. $form->addInput($in);
  12. $form->addLabel('hasło:');
  13. $form->addInput('password', 'pass');
  14. $form->addInput('submit', 'submit','wyślij',null,array('<br/>'));
  15. echo $form->getForm();
  16. ?>



To chyba tyle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 00:39