Meddelande

Minska
No announcement yet.

Form Creator -En enkel helper class för form validering

Minska
X
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • Form Creator -En enkel helper class för form validering

    Hej wF!

    Har satt ihop en enkel class för formulärhantering. Fungerar bra till ex. kontaktformulär där man använder regex eller php filter för validering.

    Hoppas det kan vara till nytta för någon


    Ex. på enkelt kontaktformulär
    PHP-kod:
    <?php

        
    include('form_creator.class.php');
        
        
        
    $form = new form_creator('kontaktform');

        
    // lägg till input fält
        
    $form->add_element('namn',
            array(
                
    'required'    => true,
                
    'type'        => 'input',
                
    'class'     => 'input',
                
    'label'        => 'Namn *',
                
    'validation'=> array('regex'=>'/.{2,}/','msg'=>'Du måste ange Namn')
            )
        );

        
    // lägg till input fält
        
    $form->add_element('epost',
            array(
                
    'required'     => true,
                
    'type'         => 'input',
                
    'class'     => 'input',
                
    'label'     => 'E-post *',
                
    'validation'=> array('filter'=>'email','msg'=>'Du måste ange en giltig E-post adress.')
            )
        );

        
    // lägg till textarea
        
    $form->add_element('meddelande',
            array(
                
    'required' => true,
                
    'validation' => array('regex'=>'/.+/','msg'=>'Du måste fylla i ett meddelande'),
                
    'type' => 'textarea',
                
    'label' => 'Meddelande'
                
    )
        );

        
    // Kontrollera om post data finns och validera dem
        
    if($form->get_values() && $form->validate()) :

            
    // hämta en assoc array med el. label som key
            
    $data $form->get_results('label');

            
    var_dump($data);
            
        else:

        
    // skriv ut felmeddelanden om det finns några.
        
    if($form->has_errors()) { echo $form->get_errors('<ul class="errors">','</ul>''<li>','</li>'); }

        
    // rendera formulär
    ?>
    <form method="post" action="" name="kontaktform" class="box">
        <div class="row">
            <?php $form->get_label('namn'); ?>
            <?php $form->get_element('namn'); ?>
        </div>
        <div class="row">
            <?php $form->get_label('epost'); ?>
            <?php $form->get_element('epost'); ?>
        </div>
        <div class="row">
            <?php $form->get_label('meddelande'); ?>
            <?php $form->get_element('meddelande'); ?>
        </div>    
        <div class="row">
            <input type="submit" name="submit" value="Skicka">
        </div>
    </form>
    <?php endif; ?>
    Bifogade filer
    Last edited by Nate.A; 2012-12-04, 08:42. Anledning: Exempel kod
Working...
X