Schnäppchen

Kategorien

ECMA, ECMAScript

Gerrit schickt heute morgen einen Link zu einem Javascript-Grundlagenartikel in die Runde, der auch mir (als Javascript-Skeptiker) recht gut gefiel. Im genannten Artikel taucht dauernd die Bezeichnung ECMA-262-3 auf. Was ist das eigentlich, ECMA?

Die ECMA International ist eine private, internationale Organisation zur Normung von Informations- und Kommunikationssystemen und Unterhaltungselektronik. Oder wie sie sich . . . → Read More: ECMA, ECMAScript

Android Entwicklung unter OpenSuse Linux

Aus welchen Gründen auch immer – die Eclipse-Plugins für die Entwicklung von Android-Programmen arbeitet nicht mit der Eclipse-Version (oder deren Konfiguration) zusammen, die mit OpenSuse 11.3 ausgeliefert wird. Irgendwelche Abhängigkeiten sind nicht erfüllt. Da ich nicht ewig herumprobieren wollte, woran es nun liegt, habe ich das Problem etwas grundsätzlicher gelöst und gleich die JEE-Version . . . → Read More: Android Entwicklung unter OpenSuse Linux

Nachträglich eine Spalte in eine Tabelle einfügen

Auch eine von diesen Funktionen, die ich maximal einmal im Vierteljahr brauchte – Einfügen einer neuen Spalte in eine bestehende Datenbank-Tabelle. Wie geht da nun noch mal? Ach ja:

alter table <tablename> add <spaltenname> <spezifikation>;

also zum Beispiel

alter table adressen add nachname MEDIUMTEXT;

cakephp: CORE/cake/libs/controller/controller.php, line 746

Manchmal ist Fehlersuche ein richtig nerviges Unterfangen! Diese Stelle in controller.php hat mich vorhin eine geschlagene halbe Stunde gekostet. Code, der unter CakePHP 1.3.2 bestens lief, verabschiedet sich unter 1.3.3 plötzlich beim Redirect nach dem Login mit der Meldung:

Warning (2): Cannot modify header information – headers already sent by (output started at /home/wymorel/public_html/app/models/contact.php:40) . . . → Read More: cakephp: CORE/cake/libs/controller/controller.php, line 746

Datenbank Backup in CakePHP

Eigentlich finde ich es günstiger, die Sicherungskopien der Datenbank von Cron erledigen zu lassen, aber der Kunde ist König. Wenn er unbedingt eine Funktion zum Backup der Datenbank will, dann bekommt er sie.

Dieses ist eine frühe aber durchaus funktionierende Version meines CakePHP Datenbank Backup Controllers. Sicherheitshalber der Hinweis, dass für eine Produktionsversion noch . . . → Read More: Datenbank Backup in CakePHP

CakePHP: Controller ohne Datenbanktabelle

Manchmal benötigt man in CakePHP Funktionalitäten, die man beim besten Willen keiner Tabelle in der Datenbank zuordnen kann. Erstellt man einen Controller ohne dazu passendes Model erhält man eine Fehlermeldung.

Man kann aber natürlich trotzdem einen funktionierenden Controller ohne Model anlegen, nämlich indem man die Variable $uses einfach auf null (oder array()) setzt.

class . . . → Read More: CakePHP: Controller ohne Datenbanktabelle

CakePHP auf einer 1und1 Homepage

Ich weiß leider nicht, wie es bei den anderen 1&1 Hosting-Paketen ist, beim Paket 1und1 Homepage Perfekt ist es jedenfalls möglich die DocumentRoot des Webservers frei zu wählen. Das ist perfekt für CakePHP-Anwendungen – man kann die DocumentRoot auf den Ordner /app/webroot/ legen, wie es sich für CakePHP gehört.

Leider funktionieren die Anwendung anschließend . . . → Read More: CakePHP auf einer 1und1 Homepage

CakePHP: id eines neuen Eintrags ermitteln

Ich brauche in der Funktion add() im Controller sofort die Id des neuen Eintrags. Problem: die Id ist der AUTO_INCREMENT Primary Key der Datenbank-Tabelle und wurde gerade erst in $this->Xxx->save() von der Datenbank automatisch erzeugt. Wie bekomme nun heraus, welche Id mysql erzeugt hat?

Ich weiß nicht genau, ob die Mysql-Funktion LAST_INSERT_ID() dafür geeignet . . . → Read More: CakePHP: id eines neuen Eintrags ermitteln

CakePHP: SQL-Dump ausgeben

Oh Mann, ich will doch nur kurz sehen, welche Anfrage CakePHP aus einem find-Statemant tatsächlich zusammen gebastelt hat. Früher machte man das über die Variable $cakeDebug. Leider gibt es die ab CakePHP 1.3 aber nicht mehr. Jetzt macht man es so:

echo $this->element(‘sql_dump’);

Siehe auch:

nuts-and-bolts-of-cakephp – Bye-bye $cakeDebug…

This email was sent using the CakePHP Framework…

Wie bekommt man das noch mal weg?

RTFM oder einfach ein entsprechendes Default Layout erstellen:

Für HTML-Mails: app/views/layouts/email/html/default.ctp Für Plain-Text: app/views/layouts/email/text/default.ctp

Und was muss da jeweils mindestens rein?

<?php echo $content_for_layout; ?>