loginform manipulieren
am 01.12.2007 - 19:59 Uhr in
Hallo,
ich möchte das auf der Loginsite schon ein Benutzername vorgegeben ist (aus einer $Variable) und das der Benutzer das Feld auch nicht manipulieren kann.
Er soll einfach nur noch das Password eingeben.
Mit http://drupal.org/node/19855 habe ich schon meine Loginsite erstellt.
Hat jemand eine Idee wie ich nun den Usernamen vorgeben kann?
//edit
Ok, den Usernamen kann ich schonmal in der function phptemplate_user_
setzen.
$form['name']['#value'] = 'blublub';
Jetzt darf das Feld nur nicht mehr editierbar sein ;).
Das würde laut Doku mit
[#attributes] => Array
(
[tabindex] => 2
)
gehen.
Jedoch schaff ich es ;(.
$form['name']['#attributes'] = WAS kommt hier rein?
Das müsste ja rein; readonly="readonly"
- Anmelden oder Registrieren um Kommentare zu schreiben
$form['name']['#attributes']
am 01.12.2007 - 21:07 Uhr
$form['name']['#attributes'] = 'readonly'
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Danke quiptime. ABer das
am 02.12.2007 - 12:33 Uhr
Danke quiptime.
ABer das habe ich schon längst ausprobiert und das funktioniert nicht. Das Feld kann weiter bearbeitet werden.
Muss da nicht ein Array hin? Als php-Stümper hab ich da so meine Probleme.
Auf http://de.selfhtml.org/html/formulare/eingabe.htm fand ich auch folgendes;
"Wenn Sie XHTML-Standard-konform arbeiten wollen, müssen Sie das Attribut in der Form readonly="readonly" notieren."
Drupal baut doch XHTML konformen Code..oder nicht?
--
ozon - http://mumble-tower.de | DVC - Der Voice Chat für Drupalisten | Jabber: ozon@jabber.ccc.de
Ich denke entsprechend der
am 02.12.2007 - 13:14 Uhr
Ich denke entsprechend der Drupal Form API wird das Array #attributes so aufgebaut:
<?php
$form['name'] = array(
'#attributes' = array('readonly' => 'readonly', 'mysuperspecialattribute' => 'blabla')
);
?>
Wobei 'mysuperspecialattribute' => 'blabla' nur verdeutlichen soll das man mehrere Attribute definieren kann.
Mit dem Beispielcode ueberschreibt man aber das komplette Foermelement $form['name']. Die anderen bereits existierenden Teile des Formelementes wie '#type', #id, '#options' oder bereits definierte Attribute gehen dabei verloren. Um eine Aenderung des bestehenden Formelementes zu ereichen muss man form_alter verwenden.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Hast Du das schon gelesen?
am 02.12.2007 - 14:10 Uhr
Hast Du das schon gelesen? http://drupal.org/node/134319
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Danke!
am 02.12.2007 - 14:22 Uhr
mal wieder ein Danke ;).
$form['name']['#attributes'] = array('readonly' => 'readonly');
Funktioniert super.
--
ozon - http://mumble-tower.de | DVC - Der Voice Chat für Drupalisten | Jabber: ozon@jabber.ccc.de