( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php on line 567
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php on line 1210
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php on line 1221
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php on line 1264
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php on line 1281
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php on line 1535
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 285
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57
40.0158429780require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php' )../bbcode.php:3

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 982
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0053211032require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/bbcode.php' )../prepend.inc.php:57
40.0158429780require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php' )../bbcode.php:3

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php on line 37
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85

( ! ) Strict standards: Declaration of UpdateCheck::hook_adminContent() should be compatible with JlogPlugin::hook_adminContent($t) in /home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php on line 76
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 274
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 277
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 663
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 733
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 892
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Deprecated: Assigning the return value of new by reference is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 912
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Strict standards: Redefining already defined constructor for class Net_URL in /home/driehle/riehle-web.com/htdocs/blog/scripts/jlogHTTP_Request.php on line 1614
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0018151588require_once( '/home/driehle/riehle-web.com/htdocs/blog/scripts/prepend.inc.php' )../index.php:30
30.0358701960JlogPluginManager->JlogPluginManager( )../prepend.inc.php:85
40.0381747840include_once( '/home/driehle/riehle-web.com/htdocs/blog/plugins/UpdateCheck.jplug.php' )../jlogPlugins.class.php:47

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.0628993180do_entry( )../index.php:67
30.0634998456StringParser->parse( )../general.func.php:179

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.07251009776do_entry( )../index.php:67
30.07311010348StringParser->parse( )../general.func.php:179

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.08701018504do_entry( )../index.php:67
30.08751019100StringParser->parse( )../general.func.php:179

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.12851039048do_teaser( )../index.php:76
30.12911040652StringParser->parse( )../general.func.php:143

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.13091018484do_teaser( )../index.php:76
30.13141019968StringParser->parse( )../general.func.php:143

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.13321019280do_teaser( )../index.php:76
30.13401021188StringParser->parse( )../general.func.php:143

( ! ) Strict standards: Non-static method StringParser_Node::destroyNode() should not be called statically, assuming $this from incompatible context in /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser.class.php on line 356
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.13591020816do_teaser( )../index.php:76
30.13671022732StringParser->parse( )../general.func.php:143

( ! ) Deprecated: Function ereg() is deprecated in /home/driehle/riehle-web.com/htdocs/blog/scripts/do_template.php on line 2
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.14591044444require( '/home/driehle/riehle-web.com/htdocs/blog/scripts/do_template.php' )../index.php:104

( ! ) Warning: Cannot modify header information - headers already sent by (output started at /home/driehle/riehle-web.com/htdocs/blog/scripts/stringparser_bbcode.class.php:1221) in /home/driehle/riehle-web.com/htdocs/blog/scripts/do_template.php on line 21
Call Stack
#TimeMemoryFunctionLocation
10.0010136404{main}( )../index.php:0
20.14591044444require( '/home/driehle/riehle-web.com/htdocs/blog/scripts/do_template.php' )../index.php:104
30.14681065320header ( )../do_template.php:21
Startseite - Riehle-Web.com

Zum Hauptinhalt springen.

Riehle-Web.com

Jlog 1.1.0 veröffentlicht

Eingestellt am 02. April 2008 um 20:36 Uhr » WebDesign Sonstiges

Gestern, am 01. April 08 haben wir nun endlich Jlog 1.1.0 veröffentlicht. Nein, das ist kein verspäteter Aprilscherz ;-)

Lange genug hat diese Version auf sich warten lassen, dafür gibt es jetzt etwas mehr Sicherheit und vor allem UTF-8 Unterstützung, so dass auch einer Übersetzung der Sprachdateien in exotische Sprachen wie Chinesisch oder Japanisch nichts mehr im Wege steht.

Mehr Infos gibts in den Release Infos zu Jlog 1.1.0, Download über die Projektseite.

(Kommentare geschlossen)


SFTP versagt (Debian)

Eingestellt am 22. Februar 2008 um 17:16 Uhr » Linux

Auf einmal sagt der SFTP-Client (hier Filezilla) nur noch:

Antwort: Fatal: unable to initialise SFTP: could not connect
Fehler: Verbindung kann nicht hergestellt werden!

In /var/log/auth.log steht lediglich:

Feb 22 17:10:43 v-10040 sshd[20317]: Accepted password for driehle from 87.xxx.xxx.xxx port 26252 ssh2
Feb 22 17:10:43 v-10040 sshd[20319]: (pam_unix) session opened for user driehle by (uid=0)
Feb 22 17:10:43 v-10040 sshd[20319]: subsystem request for sftp

Und /var/log/syslog weiß auch nichts zu berichten. Woran es lag? Daran:

v-10040 ~ # ls -la /dev/null
crw------- 1 root root 1, 3 2008-02-01 02:15 /dev/null

Außer root hat niemand Schreibrechte auf /dev/null, damit läuft SFTP nicht. Schnell rw-rw-rw- gesetzt und SFTP klappt wieder einwandfrei :-)

(Kommentare geschlossen)


Comboboxen mit Javascript

Eingestellt am 19. März 2007 um 13:13 Uhr » WebDesign

Wer kennt das Problem nicht - wenn man in einem Formular Besuchern verschiedene Werte zur Auswahl geben möchte und trotzdem eine Möglichkeit bieten will eigene Texte zu formulieren, so steht man meist vor einem Problem. Auf Betriebssystem-Ebene gibt es hierfür die sogenannten Comboboxen, Browser kennen dieses Element für Webformulare jedoch nicht - hier also eine Variante ein ähnliches Verhalten mit Javascript nachzubasteln.

Für ein Webprojekt an dem ich derzeit arbeite habe ich mir dafür folgende Lösung überlegt, die auf Javascript basiert.

HTML-Code

<select id="feld_select" name="feld" onchange="ie_replace_caller(this, 'feld_own');">
<option>--</option>
<option>Option 1</option>
<option selected="selected">Option 2</option>
<option>Option 3</option>
</select>
<script type="text/javascript">
var select_elem = document.getElementById('feld_select');
var edit_option = new Option("Eigenen Text formulieren…", "", false, false);
edit_option.onclick = function () { replace_select(this, 'feld_own'); }
select_elem.options[select_elem.length] = edit_option;
document.write('<input type="text" id="feld_own" name="" size="40" maxlength="50" '
+ 'style="display: none;" onblur="text_controll(this, \'feld_select\');" \/>');
</script>

Dieser Code definiert ein Select-Element, welches mit Javascript dynamisch um eine Option "Eigenen Text formulieren…" ergänzt wird. Nach dem Select-Element wird per Javascript noch ein Text-Feld eingefügt, welches aber per CSS ausgeblendet ist.

Javascript-Code

function AuswahlReset (elem) {
for (i = 0; i < elem.length; i++)
if (elem.options[ i ].defaultSelected == true)
elem.options[ i ].selected = true;
}
function ie_replace_caller(elem, r_elem_id) {
if(window.execScript) {
if(elem.selectedIndex == elem.length - 1) {
replace_select(r_elem_id);
}
}
}
function replace_select(elem, r_elem_id) {
var r_elem = document.getElementById(r_elem_id);
var oldname = elem.name;
r_elem.name = oldname;
elem.name = "";
r_elem.style.display = "block";
elem.parentNode.style.display = "none";
r_elem.value = "Bitte Text eingeben…";
r_elem.focus();
r_elem.select();
return false;
}
function text_controll(r_elem, elem_id) {
var elem = document.getElementById(elem_id);
if(r_elem.value == "Bitte Text eingeben…" || r_elem.value == "") {
var oldname = r_elem.name;
elem.name = oldname;
r_elem.name = "";
elem.style.display = "block";
r_elem.style.display = "none";
AuswahlReset(elem);
}
}

Um das jetzt noch ganz sauber zu programmieren könnte man natürlich den Javascript-Code noch in eine eigene Klasse packen und das HTML-Dokument durchscannen, sodass per Javascript alle Select-Elemente einer bestimmten Klasse auf diese Art und Weise erweitert werden - aber darauf habe ich hier jetzt mal verzichtet ;-)

Live-Demo

Wie funktioniert es?

Mit den verwendeten Event-Handler wird bei der Auswahl des Eintrages "Eigenen Text formulieren…" das Select-Element ausgeblendet und stattdessen ein normales Textfeld angezeigt. Die Textbox erhält den Namen des Select-Elementes (nicht zu verwechseln mit der ID!) und das Select-Element erhält einen leeren Namen.

Verliert nun das Textfeld den Fokus, so wird geprüft ob in das Textfeld etwas eingegeben wurde. Ist dies nicht der Fall (Textfeld leer oder immer noch Standard-Text drin), so wird das Textfeld aus- und das Select-Element wieder eingeblendet. Die Namesänderung wird dabei ebenfalls wieder rückgängig gemacht.

Dieser Wechselvorgang ist beliebig oft wiederholbar. Dadurch, dass immer eines der Elemente einen leere Namen hat, ist sichergestellt, dass nie beide Elemente an den Server übertragen werden, wenn das Formular abgeschickt wird. Letztendlich kriegt der Server gar nichts davon mit, ob jetzt das Select-Element oder das Textfeld abgeschickt wurde.

Nachteile

Wenn der Besucher kein Javascript aktiviert hat, ist die Angabe eines alternativen Textes nicht möglich, jedoch funktioniert das Select-Element weiterhin ganz normal und kann nach wie vor entsprechend genutzt werden.

Im Falle meines Webprojektes ist es nicht weiter tragisch, wenn der User keine eigene Option formulieren kann, dann muss er halt mit einer der Standard-Optionen zufrieden sein. Als optionale Ergänzung halte ich diese Spielerei aber durchaus für sinnvoll.

Kommentare (3)


apr_dbd_mysql unter Debian - so geht es doch [Update]

Eingestellt am 07. März 2007 um 15:02 Uhr » Linux

Aus Lizenzgründen ist apr_dbd_mysql in apr-util im Debianarchiv nicht enthalten, mit einem inoffiziellen Packet geht es aber doch, das zügig und schnell zu installieren

weiterlesen | Kommentare (4)

Ohne Worte...

Eingestellt am 26. Januar 2007 um 06:32 Uhr » Sonstiges

Mmhh, lecker frischer Apfel ;-)

weiterlesen | Kommentare (5)

Schule, virtuell

Eingestellt am 10. Januar 2007 um 08:38 Uhr » Kanada

Was macht man mit einem langweiligen Foto? Richtig, man bearbeitet es digital und versucht noch das beste rauszuholen ;-)

weiterlesen | Kommentare (5)

Frohes neues Jahr!

Eingestellt am 05. Januar 2007 um 05:37 Uhr » Kanada

Hm... nachdem ich schon länger nichts mehr geschrieben habe, nur mal ein Eintrag zum Beginn des neuen Jahres - ich wünsche allen meinen Lesern ein frohes neues Jahr 2007.

weiterlesen | Kommentare (1)