Copying sources and texts (also in parts) for publishing without our permission is NOT ALLOWED. We are fed up with finding our work on other sites (like stackoverflow).
Das Kopieren von Quellcode und Texten (auch in Auszügen) ist nicht erlaubt. Wir haben es gründlich satt, unsere Arbeit auf anderen Webseiten zu finden.

Copying for non-public usage is allowed.           Das private Kopieren und Benutzen ist natürlich erlaubt und erwünscht.
23. Jan 2009
Teaser

cakePHP: Keinen View nutzen

Wenn nur eine Funktion ausgeführt werden soll, ohne dass anschließend ein View angezeigt wird setzen Sie in der entsprechenden Funktion einfach die folgenden beiden Variablen:

$autoLayout = false;
$autoRender = false;

Damit können Sie natürlich auch die Fehlermeldung “Missing View …” unterdrücken.

23. Jan 2009
Teaser

Text mit Tags (Platzhaltern) formatieren

Sie möchten in einem Text definierte Bereiche (Tags) durch HTML Code oder andere Formatierungen ersetzen lassen und dabei selbst die Sequenzen (Namen, Format, …) bestimmen ?

Der folgende Codeschnipsel kann Ihnen die Lösung oder eine Vorlage bieten:

function FormatText($text) {

    // Definition der eigenen Tags (Formatierungsbefehle)
    $tags = array(
        'bold' => '/\[b\](.+)\[\/b\]/is',
        'center' => '/\[center\](.+)\[\/center\]/is',
        'quote' => '/\[quote\](.+)\[\/quote\]/is',
        'url' => '/\[url](.+)\[\/url\]/isU',
        'urltext' => '/\[url=(.+)\](.+)\[\/url\]/isU',
        'email' => '/\[email\](.+)\[\/email\]/isU',
        'img' => '/\[img\](.+)\[\/img\]/isU'
    );

    // Definition der HTML Tags
    $replace = array(
        'bold' => '<span style="font-weight: bold">$1</span>',
        'center' => '<center>$1</center>',
        'quote' => '<blockquote>$1</blockquote>',
        'url' => '<a href="$1" border="0">$1</a>',
        'urltext' => '<a href="$1" border="0">$2</a>',
        'email' => '<a href="mailto:$1">$1</a>',
        'img' => '<img src="$1">'
    );

    // Ersetzen der entsprechenden Passagen durch die HTML Tags
    return preg_replace($tags, $replace, $text);
}

Der Beispielcode in der Praxis:

Ihr Text mit den Formatierungstags:

$text = "Meine bevorzugte [b]Hilfeseite[/b] heißt [url]http://www.YourHelpCenter.de[/url]";

Wird mit dem folgenden PHP Befehl umgewandelt:

$html = FormatText($text);

Und so sieht das Ergebnis (der String in $html) aus:

Meine bevorzugte Hilfeseite heißt http://www.YourHelpCenter.de

Eine Übersicht der o.a. Formatierungen gibt Ihnen der folgende Beispielcode.
natürlich lassen sich die Tags auch verschachteln oder kombinieren.

$demo = "[b]Fett[/b]
         [center]Zentriert[/center]
         [quote]Zitat[/quote]
         [url]http://www.yourhelpcenter.de/category/cakephp/[/url]
         [url=http://www.yourhelpcenter.de]Hier finden Sie kostenlose Hilfe und Tipps[/url]
         [email]info@yourhelpcenter.de[/email]
         [img]http://www.google.de/intl/de_de/images/logo.gif[/img]";

echo FormatText($demo);
07. Jan 2009
Teaser

Eclipse: Java Heap Error beheben (lösen)

Wenn Sie unter Eclipse größere Dateneien in ein Projekt laden (z.Bsp. via SVN), dann kennen Sie ggf. den “Java Heap Error”.

Um das Problem zu beheben, erhöhen Sie die Werte in Ihrer “eclipse.ini” wie im folgenden Beispiel angegeben:

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
-vmargs
-Xms40m
-Xmx512m
07. Jan 2009
Teaser

Excel Spaltenname aus Nummer berechnen (A, B, .., AA, AB, … ZZ)

Wenn Sie aus einer Nummer den entsprechenden Spaltencode (wie aus der Tabellenkalkulation bekannt) zu berechnen, hilft Ihnen meine folgende PHP-Funktion weiter.

A, B C, D, …, Z, AA, AB, AC, …, AZ, BA, BB, BC, … ZZ

Sie ist sehr einfach auch auf andere Programmiersprachen anzuwenden.

function getExcelColCode($col) {
  return ((int)(($col-1)/26) > 0 ? 
             chr((int)(($col-1)/26) + 64) : "") . 
             chr($col - ((int)(($col-1)/26) * 26) + 64);
}

Oder ein wenig ausführlicher zum Nachvollziehen:

private function getExcelColCode($col) {
   $factor = (int)(($col-1)/26);

   $chr2 = chr($col - ($factor * 26) + 64);
   $chr1 = ($factor > 0 ? chr($factor + 64) : "");

   return $chr1 . $chr2;
}
31. Dez 2008
Teaser

Linux: .htaccess Datei mitkopieren

Wenn Ihnen beim Kopieren unter Linux (z.Bsp. openSuse) die .htaccess Datei/en fehlt/fehlen, dann nehmen Sie folgenden Befehl:

cp -R /quelle/. ./

Dieser Befehl kopiert alle Dateien (inklusive der “versteckten” .htaccess) in das aktuelle Verzeichnis. Unterschied zu den meistens genutzten Befehlen ist der Punkt (anstelle des *) am Ende des Quellpfades.

30. Dez 2008
Teaser

mySQL: Sortierung nach zufälligen Werten

Wenn Sie bei einer mySQL Abfrage (Query) eine Spalte mit zufälligen Werten anfügen möchten, dann nutzen Sie diesen Befehl:

SELECT ID, Name, RAND() FROM Test

Wenn Sie nach dieser Spalte sortieren möchten, dann hilft Ihnen ein einfaches “Order by” mit einem entsprechenden Spaltennamen leider nicht weiter.
Sie müssen dann ein weiteres Feld der Abfrage in die Berechnung einbeziehen. Dann geht’s:

SELECT ID, Name, 0*ID+RAND() AS sort FROM Test ORDER BY sort
30. Dez 2008
Teaser

C#: Webseite im Standardbrowser öffnen (CSharp)

Um eine Webseite im Standardbrowser des Benutzers öffnen zu lassen, reicht dieser Befehl:

Process.Start("http://www.YourHelpCenter.de");

Um den Befehl nutzen zu können, binden Sie den Diagnostics Namespace ein:

using System.Diagnostics;
29. Dez 2008
Teaser

C#: Defaultwert als Parameter simulieren (CSharp)

Da es bei C# (zumindest derzeit) keine Defaultwerte für Parameter gibt, muss man ein wenig improvisieren um den gewünschten Nutzen zu haben:

// Die Funktion für den simulierten Defaultparameter
// Wird die Funktion "test" ohne zweiten Parameter aufgerufen, 
// greift diese Funktion und übergibt den Wert 1 als Default
private string test(long first) {
   return test(size, 1);
}

// Die Hauptfunktion mit der Beispielberechnung
// Kann auch direkt mit einem anderen Wert aufgerufen werden: test(12,8);
private string test(long first, int second) {
   return first + second;
}
29. Dez 2008
Teaser

ProcessMessages in C# (CSharp)

Aus anderen Programmiersprachen kennen Sie den Befehl “Application.ProcessMessages” um andere, wartenden Task / Operationen während komplexeren Berechnungen ausführen zu lassen.

In C# steht Ihnen der folgende Befehl dafür zur Verfügung:

Application.DoEvents();
27. Dez 2008
Teaser

eclipse: Dateien online direkt per FTP bearbeiten

Wenn Sie Ihre Dateien online per eclipse bearbeiten bearbeiten möchten, dann kann ich Ihnen folgende Lösung empfehlen. Ich nutze diese kostenlose Möglichkeit seit einigen Monaten und bin sehr zufrieden.

  • Laden Sie sich kostenlos die Freeware NetDrive herunter (ca. 8 MB)
  • Installieren Sie die Software auf Ihrem PC (Starten Sie die NetDrive_SETUP.exe)
  • Richten Sie in der NetDrive-Oberfläche eine Verbindung zu Ihrem FTP oder WebDAV Server ein
  • Lassen Sie sich den gewünschten Ordner auf ein lokales Laufwerk mappen (verbinden)
  • Unter eclipse können Sie nun das Projekt bzw. die Dateien bearbeiten als wären sie lokal verfügbar.
    Die Software NetDrive übernimmt die Synchronisation (den Dateiabgleich) mit Ihrem FTP Server

Auf diese Weise können Sie bei anderen Programmen (z.Bsp. Dreamweaver) Ihre Daten online bearbeiten ohne jedes Mal die geänderten Dateien per FTP Programm auszutauschen.