Yast, Software management,
Search “Knoda”: knoda, knoda devel
Knoda 8.2-24, (accept)
hk_classes wordt automatisch bij geselecteerd (continue)
insert CD1: OpenSuse DVD (ok)
Install/remove more? (no)
Yast afsluiten.
Menu: Office/Database/Knoda
Driver select dialogue: dbase, mysql, odbc, paradox, postgres, sqlite2, sqlite3: (mysql)
Host: serverhostname , User: applicationname , Password: apllicationpassw
OK!
Comments Off
Knoda is het KDE databank programma (”frontend”); om verbinding te maken met databanken en de gegevens daaruit te gebruiken. Hoort bij de KDE programma’s, www.knoda.org/
Start Knoda op (hier versie 0.7.2 - er zijn al recentere versies bv. 17.12.2006 v 0.8.3).
Driver select dialog
met
mysql
odbc
postgres
sqlite3
Selecteer mysq, druk “Connect”, en vul in:
Host: …
User:
Password:
TCP Port: (3306)
Emulate Boolean (yes)
Nadat de verbinding gemaakt is (bewaar password eventueel), krijg je in de linkse kolom de keuze: Tables, Queries, Forms, Reports.
Al wat je maakt op die vier gebieden kan je ook bewaren voor later gebruik (het wordt niet op de MySQL server bewaard, maar in een bestand op je eigen computer)
Bovenaan heb je een rolluik met de mogelijke databases; er staat er een geselecteerd.
Voor veilig gebruik kan je een read-only account maken op de database, maar het programma lijkt ook de mogelijkheid te hebben om Forms te maken voor input van data.
Comments Off
Initialisaties van variabelen van buiten het programma:
itin.conf
$PHPLIB_DIR = $_server[’DOCUMENT_ROOT’].’phplib’ ;
ini_set( ‘include_path’, ‘:’ . $PHPLIB_DIR . ‘:’ . ini_get(include_path));
include(’template.inc’);
$TEMPLATE_DIR = $_SERVER[’DOCUMENT_ROOT’] . ‘/itin/templates’;
$OUT_TEMPLATE = ‘listing2out.html’;
define(MYGLOBALCONSTANT, waarde);
define(VERSION,’0.2.1′);
Als het niet buiten de document root directory kan staan zeker een .php uitgang geven zodat het niet leesbaar is via een webinterface: itin_config.php (of andere extenties die door php parser gaan)
De template werkt met accolades om plaats voor data aan te geven:
listing2out.html :
…
Serial number: {ITIN_SN}….
Die wordt later in het script een waarde toegekend:
$t->set_var(”ITIN_SN”, $itin_sn);
Comments Off
Tabellen bijgemaakt:
- tabel met presets: Veel herhaalde waarden zoals merk, locatie, enz kunnen bewaard worden om ze aan te bieden in een voorkeuzelijst. De tabel met voorkeuzewaarden heeft behalve een “key” om een groep waarden te selecteren, een veld voor een tekst- en een veld voor een getal-waarde.
%DocumentRoot% gebruiken om geen “fully qualified path” te moeten gebruiken in de app (om zo overzetten makkelijker mogelijk te maken). Voorbeeld directory struktuur:
-phplib
-pear
-framework
- itin (applicatie)
-+- apps
-+-+- class
-+-+- templates
-+-+- images
-+-data
Foutmeldingen niet in code:
- ofwel in een file met de foutmeldingen
- ofwel in een tabel met foutmeldingen.
errormessage
-id : dit is dan ofwel een nummer ofwel de engelse foutmelding verwerkt tot id, bv “err_filenotfound”, “warn_noresults”
-lang: de code voor de taal, bv US, NL, FR. Minimum bv “ENG” of “US” voorzien
-text: de foutmelding zelf in de taal van “lang”
-inputon
-inputby
-updateon
-updateby
In andere voorbeelden wordt gewerkt met een multi-dimensionele array die met een include opgenomen wordt in de php code. In het aparte bestand kunnen vertalingen gemaakt worden:
$ERRORS[’ENG’] [’err_filenotfound’] = “This program could not find the file needed”;
$ERRORS[’ENG’] [’warn_noresults’] = “No results found for these criteria”;
$ERRORS[’NL’] [’err_filenotfound’] = “Het programma kon een bestand niet vinden”;
$ERRORS[’NL’] [’warn_noresults’] = “Het programma vond geen resultaten voor deze opdracht”;
De talen staan dan in deze file, maar zijn hier als php-code zichtbaar. Een fout in de vertaling geeft import van foute code!
Comments Off