Location: PHPKode > projects > HTMLresourceKit > documentation/mysql_form_ref.html
<html>
<head>
	<title>HTMLresKit - mysql_form</title>
	<link rel="stylesheet" href="docstyle.css" type="text/css">
</head>
<body>
<a name="top"><h1>HTMLresourceKit - mysql_form Klassenreferenz</h1></a>

<!-- <p>Hier sind einige wichtigen Eigenschaften der Klasse <b>mysql_form</b> beschrieben.</p>
<hr>
<table class="content">
<tr class="fett">
	<td>Eigenschaft</td>
	<td>Funktion</td>
	<td>Bemerkungen</td>
</tr>
<tr>
	<td class="refcode" id="refcode"></td>
	<td width="50%" class="refdesc1" id="refdesc1"></td>
	<td width="50%" class="refdesc2" id="refdesc2"></td>
</tr>
</table> -->

<p>Hier sind alle wichtigen Methoden zur Arbeit mit <b>mysql_form.php</b> aufgelistet und beschrieben</p>
<hr>
<table class="content">
<tr class="fett">
	<td>Methode</td>
	<td>Funktion</td>
	<td>Bemerkungen</td>
</tr>
<tr>
	<td class="refcode" id="refcode">mysql_form(<b>$table</b>)</td>
	<td class="refdesc1" id="refdesc1"><b><font color="#800000">Konstruktor</font></b>. Dem Objektkonstruktor müssen Sie nur ein Argument mitgeben, welches auf eine existierende Tabelle in der verbundenen Datenbank verweist. Mit dieser Tabelle arbeitet dann das erzeugte Objekt.</td>
	<td class="refdesc2" id="refdesc2"><b>Hinweise:</b><br>Wenn das Formular z.B. neue Datensätze anlegen soll, dann werden diese unmittelbar in die angegebene Tabelle geschrieben.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">transport(<b>$fieldName</b>)</td>
	<td class="refdesc1" id="refdesc1">Das angegebene Feld wird als HTML-Hiddenfield eingebunden. Dies macht Sinn, wenn Sie das Formular mit den Methoden <b>update</b> oder <b>copy</b> mit Daten vorbelegen und z.B. eine ID als verstecktes Feld übergeben möchten.</td>
	<td class="refdesc2" id="refdesc2">Das Feld wird auch mit in die Datenbank geschrieben. Es sollten niemals kritische Daten (wie z.B. Passwörter) in einem Hiddenfield übergeben werden!</td>
</tr>
<tr>
	<td class="refcode" id="refcode">hidden_field(<b>$fieldName</b>, <b>$value</b>)</td>
	<td class="refdesc1" id="refdesc1">Mit dieser Funktion kann ein benutzerdefiniertes Hiddenfield eingebunden werden. Dieses Feld wird bei Datenbankoperationen <b>nicht</b> berücksichtigt. Mit dieser Funktionen können Sie zusätzliche Steuerinformationen für Ihr eigenes Skript einbauen, die beim Absenden des Formulars mit geschickt werden sollen.</td>
	<td class="refdesc2" id="refdesc2">Wenn z.B. ein und das selbe Formular sowohl für Eingabe als auch Änderung von Daten verwendet wird, ist diese Funktion wichtig, um URL-Parameter durchzuschleifen.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">subselect(<b>$fieldName</b>, <b>$query</b>, <b>$more</b> = false)</td>
	<td class="refdesc1" id="refdesc1">Sie können mit der subselect-Methode eine Datenbank-Unterabfrage (z.B.auf eine andere Tabelle) an ein Formularfeld binden. Die Abfrage wird im Parameter <b>$query</b> formuliert und muss <b>zwei Ergebnisspalten</b> besitzen: die erste dient als value-Parameter, die zweite als Beschriftung der erzeugten &lt;option&gt;-Tags. Wenn Sie anstatt eines SQL-Statements <b>&quot;none&quot;</b> angeben, wird keine Query ausgeführt und nur die Optionen aus dem Array eingefügt. Bei <b>$more</b> können Sie optional ein assoziatives Array angeben welches zusätzliche, also nicht in der DB-Abfrage enthaltene, Name/Wert-Paare enthält.</td>
	<td class="refdesc2" id="refdesc2"><b>Beispiel:</b><br>$myform -> <b>subselect</b>("status","none", <b>array</b>(0 => "Erstkontakt",												1 => "regelmäßige Abfrage",												-1=> "kein Kontakt gewünscht",												2 => "Stammkunde",												3 => "Stammkunde mit Bedürfnis") );		</td>
</tr>
<tr>
	<td class="refcode" id="refcode">caption(<b>$fieldName</b>, <b>$value</b>)</td>
	<td class="refdesc1" id="refdesc1">Mit dieser Funktion können Sie die Beschriftung eines Feldes ändern. Standardmässig werden die Felder mit den Spaltennamen aus der Datenbank beschriftet.</td>
	<td class="refdesc2" id="refdesc2">Im Gegensatz zu <b>mysql_table</b> müssen Sie hier die Feldnamen nicht voll qualifizieren, da mysql_form nur mit <b>einer</b> Tabelle arbeitet.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">update(<b>$fieldName</b>, <b>$value</b>)</td>
	<td class="refdesc1" id="refdesc1">Mit dieser Funktion können Sie das Formular mit Werten vorbelegen. <b>$fieldName</b> enthält den Namen der Schlüsselspalte, <b>$value</b> den Wert, der enthalten sein soll. Achten Sie darauf, das die Werte in der Schlüsselspalte eindeutig (unique) sind. Bei dieser Methode wird der Datensatz geändert, d.h. es wird ein <b>UPDATE</b> auf die Tabelle angewandt.</td>
	<td class="refdesc2" id="refdesc2" rowspan=2><b>Anmerkung:</b><br>verwenden Sie keine der beiden Methoden, wird ein leeres Formular angezeigt und ein neuer Datensatz erzeugt.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">copy(<b>$fieldName</b>, <b>$value</b>)</td>
	<td class="refdesc1" id="refdesc1">Belegt das Formular genau wie die update-Methode mit Werten vor. Der Unterschied ist, daß eine INSERT-Operation auf die Tabelle angewandt wird, d.h. ein neuer Datensatz in dieTabelle eingefügt wird.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">ignore(<b>$fieldName</b>)</td>
	<td class="refdesc1" id="refdesc1"><b>$fieldName</b> enthält den Namen eines Feldes, das komplett ignoriert werden soll. Dieses Feld wird <b>nicht</b> angezeigt und auch bei Datenbankoperationen <b>nicht</b> berücksichtigt.</td>
	<td class="refdesc2" id="refdesc2"><b>Hinweis:</b><br>Achten Sie daruf, daß für das Feld auch keine Eigabepflicht besteht. Die Eingabepflicht können Sie beeinflussen, wenn Sie das Feld in der Datenbank auf <b>&quot;null&quot;</b> setzen, oder indem Sie die Methode <b>set_required</b> anwenden.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">set_required(<b>$fieldName</b>, <b>$status</b> = true)</td>
	<td class="refdesc1" id="refdesc1">Mit dieser Methode setzen Sie die Eingabepflicht für das Feld <b>$fieldName</b>. Normalerweise wird die Eingabepflicht durch die Prüfung der Feldeigenschaft <b>&quot;null&quot;</b> in der Datenbank festgelegt. Bei Datumsfeldern (TIMESTAMP) ist allerdings häufig <b>&quot;null=yes&quot;</b> (das würde <b>keine</b> Eingabepflicht bedeuten) in der Tabelle festgelegt, was manchmal nicht erwünscht ist.</td>
	<td class="refdesc2" id="refdesc2">&nbsp;</td>
</tr>
<tr>
	<td class="refcode" id="refcode">set_unique(<b>$fieldName</b>)</td>
	<td class="refdesc1" id="refdesc1">Diese Methode aktiviert die Eindeutigkeitsprüfung für das angegebene Feld.</td>
	<td class="refdesc2" id="refdesc2"><b><font color="#800000">Achtung:</font></b><br>Die Prüfung wird mit dem internen Formvalidator vorgenommen und ist nocht nicht ganz ausgereift!!!</td>
</tr>
<tr>
	<td class="refcode" id="refcode">readonly(<b>$fieldName, $statement</b> = false)</td>
	<td class="refdesc1" id="refdesc1">Hiermit wird der Inhalt des Feldes nur angezeigt und ist nicht editierbar. Zusätzlich können Sie ein <b>SQL-Statement</b> mit angeben, welches Inhalte aus anderen Tabellen anzeigen kann. Zusätzlich wird der Wert des Feldes als HTML-Hiddenfield eingebunden. Diese Option macht freilich nur Sinn, wenn das Formular mit Werten vorbelegt wurde.</td>
	<td class="refdesc2" id="refdesc2"><b>Hinweis:</b><br> Ihr SQL-Statement sollte den Platzhalter <b>#value#</b> enthalten. In diesen Platzhalter wird der Wert des Feldes <b>$fieldName</b> eingebunden, damit Bedingungsabfragen erstellt werden können: <b>SELECT</b> <i>firmenname</i> <b>FROM</b> <i>kunden</i> <b>WHERE</b> <i>id</i>=<b>#value#</b></td>
</tr>
<tr>
	<td class="refcode" id="refcode">validate()</td>
	<td class="refdesc1" id="refdesc1">Diese Methode aktiviert die Formularprüfung. Sie muss unbedingt aufgerufen werden und sollte möglichst unmittelbar vor der <b>output()</b>-Methode stehen.</td>
	<td class="refdesc2" id="refdesc2"><b><font color="#800000">Achtung:</font></b><br> Derzeit überprüft der Validator nur auf Eingabepflicht und gibt bei fehlender Eingabe eine Meldung oberhalb des betreffenden Feldes aus. Der Validator wird in Zukunft viele weitere Prüfungen anhand der Tabellenstruktur vornehmen und kann dann auch konfiguriert werden.</td>
</tr>
<tr>
	<td class="refcode" id="refcode">upcase_captions()</td>
	<td class="refdesc1" id="refdesc1">Diese Methode ist nützlich, wenn Sie die Spaltennamen aus der Tabelle beibehalten möchten. Meistens werden Spaltennamen klein geschrieben. Mit dieser Methode werden die Anfangsbuchstaben in Grossbuchstaben umgewandelt.</td>
	<td class="refdesc2" id="refdesc2">&nbsp;</td>
</tr>
<tr>
	<td class="refcode" id="refcode">title(<b>$title</b>)</td>
	<td class="refdesc1" id="refdesc1">Diese Funktion vergibt einen Titel für das Formular. Wird Sie nicht angewandt, wird ein Standardtitel &quot;HTMLreskit Form&quot; angezeigt.</td>
	<td class="refdesc2" id="refdesc2">&nbsp;</td>
</tr>
</table>

<a name="footer"><h2><a href="#top">nach oben</a>&nbsp;&nbsp;<a href="mysql_table_main.html">mysql_form-Übersicht</a></h2></a>
<p>HTMLresourceKit 0.0.1 - Dokumentation by Achim Schrepfer 07/2001</p>

</body>
</html>
Return current item: HTMLresourceKit