anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Mo 09 Jun, 2025 06:45

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 1 Beitrag ] 
Autor Nachricht
 Betreff des Beitrags: Showformklasse
BeitragVerfasst: Mi 20 Jun, 2007 16:59 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Man soll ja nicht sagen können, ich horte nur und veröffentliche nie was :D

Dieses mal hab ich die showform-Funktion erweitert und eine komplette Klasse geschaffen. Die Klasse hat einiges mehr drauf als die Funktion, im folgenden werden noch die Features aufgezählt.

Der Nachteil: Das ganze ist in der Rohfassung erst ab PHP5 lauffähig.

Features
  • Übernimmt das Layout als Array und nicht als String. Vorteile liegen auf der Hand (, nervt nicht mehr im Text...)
  • Standardwerte möglich!
  • Verschiedenste Layoutformen für das Setting möglich, darunter:
    • text
    • Begrenzer Text
    • Reine Textausgabe
    • Integer (Kleineres Textfeld)
    • Passwort
    • Ja/Nein
    • Enum
    • Set (bzw Multiplichoice, im select-Look oder mit Checkboxen)
    • textarea
    • Range


In Aktion:
[php]<?php
Require 'erdev/lib/showform.class.php';

$form = array(
'Textfelder',
'text1' => array(
'Ein normaler Text',
'text'
),
'text2' => array(
'Text mit Standardwert',
'text',
'default' => 'Wert'
),
'text3' => array(
'Ein in der länge begrenzer Text',
'limitedtext',
10 # Nicht mehr als 10 Zeichen, funktioniert nicht in allen Browsern
),
'text4' => array(
'Passwortzeile',
'password',
),
'text5' => array(
'"Versteckte" Zeile, bzw "viewonly"',
'hidden',
'default' => 'Du kannst mich nich bearbeiten!!!'
),
'int' => array(
'Ein für Zahlen angepasstest Feld',
'int',
),
'textarea' => array(
'Ein Feld für grosse Eingaben',
'textarea',
30, #cols
5, #rows
),
'Weiteres',
'bool' => array(
'Ja oder Nein?',
'bool',
# Mit "default" => 1 kann Standard auf "JA" gestellt werden
),
'enum' => array(
'Dein Lieblingskanton',
'enum',
array(
0 => 'Basel',
1 => 'Genf',
2 => 'Bern',
3 => 'Schwyz',
),
# AUch hier kann mit "default" => $key die Standardantwort geändert werden
),
'enum2' => array(
'Mein Lieblingskanton',
'hiddenenum',
array(
0 => 'Basel',
1 => 'Genf',
2 => 'Bern',
3 => 'Schwyz',
),
'default' => 0,
),
'set' => array(
'Deine Fàhigkeiten',
'set',
array(
0 => 'Schwert',
1 => 'Axt',
2 => 'Keule',
),
# Als vierten Parameter kann man die Grösse des Selectfeldes bestimmen (Anzahl der Sichtbaren Einträge), Standard 3
),
'set2' => array(
'Deine Fähigkeiten, Teil 2',
'set',
array(
0 => 'Gebete',
1 => 'Elementarmagie',
2 => 'Gegensatzsmagie',
),
'checkbox' => true, # NImmt Checkboxen anstatt dem select-Feld
),
'Sonstiges',
'range1' => array(
'Ziffer zwischen 0 und 9',
'range',
0, # Start
9 # Ende
),
'range2' => array(
'Zahl zwischen 0 und 1000',
'range',
0, 1000
),
);

$Showform = new Showform('Einstellungen', $form, ($i = ($row = array())));
$Showform->enableSave(); # Lässt man das Weg, dann lässt sich das FOrmuler nicht speichern (Kein Submit-Button)
echo ('<form action="ucp.php?q=guildprefs" method="post">');
echo $Showform->getOut(); # Ausgabe, geht auch mit: unset($Showform);
echo ('</form>');

?>[/php]


Dateianhänge:
Showform.zip [2.27 KIB]
403-mal heruntergeladen
Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 1 Beitrag ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 10 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum