rulururu

post Gestion des langues avec Prado

novembre 28th, 2007

Catégorie: Prado — 23unit @ 18:45

Voici un petit tutorial pour mettre en place un site en français et anglais avec Prado.

Tout d’abord, nous allons configurer le fichier application.xml pour mettre en place la gestion de l’Internationalization (I18N).

Nous lui rajoutons donc le module concerné ayant pour langue par défaut : fr

<module id=”globalization” class=”TGlobalizationAutoDetect” Culture=”fr”>

<translation type=”XLIFF” source=”Application.lang” autosave=”false” cache=”false” />

</module>

Application.lang signifiant que les fichiers xml des langues seront dans le répertoire lang de l’application : protected/lang par défaut.

Ensuite nous modifions le fichier index.php de l’application en lui ajoutant une nouvelle classe héritant de TApplication.

On remplace donc :

$application=new TApplication;
$application->run();

Par :

class MyApplication extends TApplication
{

public function OnLoadStateComplete()
{

parent::OnLoadStateComplete();// If the culture has changed
if (isset($this->Request[’lang’])) {

$this->setGlobalState(’lang’, $this->Request[’lang’]);

}

// This changes the Culture if the GlobalState variable ‘lang’ is set.
if ($this->getGlobalState(’lang’) != “”) {

$this->getGlobalization()->setCulture($this->getGlobalState(’lang’));

}

$this->getGlobalization()->Charset = “UTF-8″; //change the charset

}

}

$application=new MyApplication;
$application->run();

Vous pouvez bien entendu mettre autre chose que UTF-8 pour le Charset.

Nous rajoutons ensuite des liens pour passer de français à anglais et vise et versa :

<a href=”index.php?page=<%= $this->Request->ServiceParameter %>〈=fr”>FR</a>
<a href=”index.php?page=<%= $this->Request->ServiceParameter %>〈=en”>EN</a>

Il ne vous reste plus qu’à mettre <%[Welcome]%> à la place de Welcome par exemple, et Prado va créer automatiquement les fichiers xml : lang/fr/messages.xml et lang/en/messages.xml

Ensuite à vous de rentrer les traductions dans les fichiers xml comme ceci :

<trans-unit id=”1″>

<source>Bienvenue</source>
<target>
Welcome</target>

</trans-unit>

<trans-unit id=”2″>

<source><![CDATA[Propulsé par]]></source>
<target>Powered by</target>

</trans-unit>

Pour le deuxième exemple : <%[Propulsé par]%>

Pour toute question, critique ou suggestion, n’hésitez pas.

post Nouvelle version pour Wamp

novembre 26th, 2007

Catégorie: News — 23unit @ 18:57

Depuis le 21 novembre 2007, une nouvelle version de Wamp est disponible.

Rebaptisée WampServer 2, elle inclus :

- Apache 2.2.6
- MySQL 5.0.45
- PHP 5.2.5

Par ici pour télécharger : WampServer 2.0

post Modification du site www.unit-prod.com

novembre 16th, 2007

Catégorie: News — 23unit @ 20:11

Suite à diverses remarques d’utilisateurs ayant navigués sur mon site, j’ai décidé de modifier celui-ci.

En effet, le titre des rubriques et leur contenu étaient mal organisés et on pouvait se demander où trouver quoi.

J’ai donc décidé de renommer Accueil par services, où sont référencées les solutions web d’UNITPROD, ainsi que Créations par Portfolio.

J’ai également modifier le contenu de Profil car des informations n’étaient pas à leur place.

Et pour finir j’ai opté pour la suppression de la rubrique news anciennement mis dans la rubrique Accueil car désormais les news seront écrites ici, sur le blog.

Voilà, j’espère que cette nouvelle réorganisation permettra à vous, utilisateurs, de naviguer intuitivement.

post Création des classes Active Record sous Prado

novembre 9th, 2007

Catégorie: Prado — 23unit @ 15:09

Pour créer les classes Active Record correspondant aux tables de votre base de donnée, tout est expliqué ici : http://www.pradosoft.com/demos/blog-tutorial/?page=Day2.CreateAR

Cependant, une petite précision :

Pour effectuer la commande php path/to/prado-cli.php shell . sous windows :

Ouvrez la console windows (démarrer->exécuter->cmd), allez dans le répertoire où ce situe php.exe, et tapez :

php chemin_vers_le_framework_prado/prado-cli.php shell chemin_vers_le_repertoire_de_votre_site

Si vous avez des erreurs, vérifiez bien les paramètres de connexion à la base dans le fichier application.xml. Et surtout le bon chargement de l’extension php_pdo_mysql dans le fichier ini de php (si vous travaillez sous wamp, faites la modification dans les 2 fichiers ini de php, car en mode console ce n’est pas le même qui est chargé).

post Remplir une liste depuis une base de donnée avec Prado

novembre 2nd, 2007

Catégorie: Prado — 23unit @ 16:36

Dans la documentation de Prado (blog tutorial et quickstart), il y est expliqué les différents moyens d’accès à une base de donnée ainsi que les différents composants (liste, label, boutons,…).

Pour ceux qui sont un peu perdu, je vais mettre ici un exemple simple et rapide, pour remplir une liste à partir d’un contenu extrait d’une base de donnée.

Tout d’abord, il faut créer un fichier gabarit (exemple : bindListe.page) et son fichier de classe (soit bindListe.php) et les placer dans le répertoire par défaut des pages du site nommé “Pages”.

Ensuite on veut que notre application démarre par défaut sur cette page. Pour cela il suffit de modifier le fichier “application.xml” et de insérer/modifier le code existant par :

<paths>

<using namespace=”System.Data.*” />
<using namespace=”System.Web.UI.ActiveControls.*” />

</paths>

et

<services>

<service id=”page” class=”TPageService” DefaultPage=”index” />

</services>

Ensuite dans le fichier “bindListe.page”, copier/coller le code suivant :

<com:TActivePanel>

<com:TActiveListBox ID=”liste” Rows=”1″ />

</com:TActivePanel>

Et dans le fichier “bindListe.php”, copier/coller le code suivant :

<?php

class bindListe extends TPage
{

public function onInit($param)
{

parent::onInit($param);

$connection=new TDbConnection(”mysql:host=host;dbname=nomBDD”,”user”,”pass”);
$connection->Active=true;

$command=$connection->createCommand(”SELECT * FROM votreTable”);
$dataReader=$command->query();

$dataReader->bindColumn(2,$texte); //traduiser cette ligne de code par “je veux que la colonne 2 du résultat de ma requête sql soit envoyé dans la variable $texte”

$tbl=array();

//on lit l’ensemble des lignes du résultat de la requête
while($dataReader->read()!==false)
{

$tbl[]=array($texte);

}

$this->liste->DataSource=$tbl;
$this->liste->dataBind();

}

}

?>

Bien entendu vous devez avoir une table dans votre base avec au minimum 2 colonnes. La 2ème colonne étant le texte à afficher dans la liste.

Voilà, pour tout problème ou commentaire, n’hésitez pas à laisser un message.

post Découverte de Prado

novembre 2nd, 2007

Catégorie: Prado — 23unit @ 2:46

Etant sur un gros projet actuellement (dont je ne peux divulguer d’informations pour l’instant), j’ai décider d’approfondir mes connaissances sur les Frameworks PHP existant. Suite à des recherches diverses sur le sujet, j’ai opté pour l’utilisation du Framework PHP Prado.

PRADO est un framework de programmation Web pour PHP5, orienté composant et basé sur un modèle événementiel. Avec PRADO, les applications Web sont conçues en termes de composants, d’événements et de propriétés plutôt qu’en termes de procédures, d’URLs et de paramètres de requête.

De première vue, il parait assez complexe, il faut un minimum de connaissance en PHP et surtout en langage événementiel. PRADO que l’on surnomme d’ailleurs l’ASP .net du PHP.

Je posterais donc des articles sur PRADO au cours de mon projet sur les points qui m’auront ralenti dans la compréhension de celui-ci.

post Ouverture du blog

novembre 1st, 2007

Catégorie: News — 23unit @ 22:36

Bonjour à tous,

Un blog pour UNITPROD?

Alors tout d’abord, je décide d’ouvrir un blog car je trouve de plus en plus d’aide sur des blogs quand je travaille.

Donc j’ai décider de faire partager les problèmes que je rencontre au cours de mes projets.

Un blog que maintenant? Oui car avant, créer le mien, je n’en trouvais pas l’utilité.

Vous trouverez donc sur ce blog des aides, des tutoriaux, des témoignages ainsi que des informations sur mes projets en cours.

Voila, bonne lecture !

ruldrurd