17 avril 2003

Installer des logiciels sous Windows quand on ne posséde pas le droit "administrateur"

Sous Windows 2000, NT ou XP vous ne pouvez pas installer des logiciels si vous ne possédez pas le droit "administrateur".

Rassurez-vous on peut faire autrement !

Et c'est d'ailleurs l'occasion de découvrir le monde de l'informatique libre.

Installez donc à coté de votre window$ une distribution linux Mandrake

:->

16 avril 2003

Configurer le look de son terminal rxvt ?

Il est généralement plus agrèable de travailler avec un terminal configurer à son goût. Voici comment configurer le terminal rxvt.

Il faut créer un fichier $HOME/.Xresources. Sous cygwin, il faudra problement le mettre par ici : c:\cygwin\home\VOTRE_USER

Dans ce fichier, on peut facilement modifier chaque option.
Voici un exemple de configuration parmi tant d'autres :


rxvt*geometry:            100x32+100+100
rxvt*background:          grey30
rxvt*foreground:          DarkSeaGreen1
rxvt*cursorColor:         #00ff00
rxvt*pointerColor         #ff0000
rxvt*font:                Lucida Console-11
rxvt*saveLines:           4096
rxvt*visualBell:          true
rxvt*scrollBar:           true
rxvt*scrollBar_right:     true
rxvt*backspacekey:        ^H

Sous cygwin, il vous faudra sûrment ecrire un petit lanceur nommé rxvt.bat qui contiendra ceci :


@echo off
REM Lanceur RXVT pour cygwin
C:
chdir \cygwin\bin
rxvt.exe -e /bin/bash --login -i

Sous Linux Mandrake, rxvt est par defaut un lien symbolique vers le "wrapper" /usr/X11R6?/bin/rxvt.sh. Si vous souhaitez modifier les couleurs, il vous faudra changer ce lien pour le faire pointer directement sur /usr/X11R6?/bin/rxvt.bin

Comment utiliser l'interprétation dynamique pour écrire moins de code

Ecrit par Pseudom

Soit deux ensembles (qui seront deux boucles imbriquées) :

  • Une liste de date de de rendez-vous
  • Une liste d'utilisateurs.

Il faut parcourir les deux listes pour savoir quel utilisateur doit participer à quel rendez-vous.
On doit envoyer un message par rendez-vous à chaque utilisateur. Le message peut varier légèrement pour chaque rendez-vous.

Dans la première boucle on ne connait pas le nom utilisateur mais uniquement le rendez-vous. Le reste du message est du texte.

Remarquez le \$ devant la variable Nom_complet

                
$message .= sprintf("\$Nom_complet est prévenu pour le $DateDeRendezVous<br>\n");

Dans la deuxième boucle (imbriquée dans la première) on connait enfin le nom de l'utilisateur.
Remarquez le \$ devant la variable {res_message}

// affichage des messages de rendez vous
eval("\$res_message = \"$message\" ;"); // on connait le nom utilisateur
echo $res_message;

15 avril 2003

Mettre du HTML dans le texte d'un bouton HTML

Il existe des possibilités en HTML, qui sont bien souvent méconnues. Alors d'accord, vous allez me dire tout les navigateurs ne supportent de tels extensions. OK c'est vrai, mais dans le carde d'un Intranet, et en permettant l'utilisation de Mozilla et IE, elles peuvent être pratiques...

Voici donc un bouton SUBMIT légèrement différent d'un bouton standard :

... que l'on obtient avec le code HTML suivant :

      
<button name="clique"
      type="button"
      value="retour"
      onClick="submit()">
      Voici un <b>bouton avec du <i>HTML</i> dedans</b>
</button>

Accéder à une URL ou simuler une requête HTTP en PHP

Il est parfois nécessaire d'accéder à une URL distante ou même à un formulaire distant.
On peut dans le cas d'une page statique, se contenter de la fonction PHP "fopen". Mais celle-ci devient vite limitée si on doit passer par un proxy ou si on doit utiliser des paramètres.

Pour résoudre ce problème, inutile de chercher bien loin la librairie PEAR contient tout ce qu'il faut !

Voici 2 exemples d'accès à un formulaire à travers un proxy :

Avec une méthode GET :


require_once('HTTP/Request.php');

req = &new HTTP_Request('http://pear.php.net:80/package-search.php');
$req->setMethod(HTTP_REQUEST_METHOD_GET);
$req->setProxy('proxy.exemple.fr', '3127');
$req->addRawQueryString('pkg_name=http&bool=AND&submit=Search');
$req->sendRequest();

echo "<h1>Code retour : ". $req->getResponseCode()."</h1>";
echo $req->getResponseBody();
?>

Avec une méthode POST :


require_once('HTTP/Request.php');

$req = &new HTTP_Request('http://exemple.com:56665/cgi-bin/moncgi');
$req->setMethod(HTTP_REQUEST_METHOD_POST);
$req->setProxy('proxy.exemple.fr', '3127');
$req->addPostData('param1', 'nicolas');
$req->addPostData('param2', 'et');
$req->addPostData('param3', 'touv');
$req->sendRequest();

echo "<h1>Code retour : ". $req->getResponseCode()."</h1>";
echo $req->getResponseBody();

Utiliser des variables dynamiques dans un shell

Ecrit par Pseudom

Les tableaux multi-dimensionnels sont de plus en plus courants. Leur usage peut être simulé dans un shell avec les variables dynamiques.

Le principe de l'exemple est le suivant :

Il existe une configuration par année, définie dans une ou plusieurs variables. Le shell comprend une partie initialisation de ces variables.

L'année est passée en paramètre du shell.

On ne veut afficher que le paramétrage pour cette année.


#!/bin/ksh

PARAM_annee_2003=" configuration annee 2003 "
PARAM_annee_2002=" configuration annee 2002 "
PARAM_annee_2001=" configuration annee 2001 "

# l'annee est passe en parametre
ANNEE=$1

if [ -z "$ANNEE" ] ; then
        echo "Attention : variable ANNEE non definie !"
fi

# definition du nom de la variable
PARAM="\$PARAM_annee_${ANNEE}"

# recuperation de la valeur de cette variable
ValPARAM=`eval echo $PARAM`

echo ${ValPARAM}"

03 avril 2003

Monter un serveur Web sur une Mandrake 9.1 en utilisant uniquement la souris

Il est très simple pour un débutant de monter un serveur Web pour faire un peu de PHP ou pour utiliser des applications PHP. Voyons comment faire en 3 étapes

1. Installation

Pour cela, rendez-vous dans Centre de Contrôle Mandrake, rubrique Package, Installation de Nouveau Package.

Puis chercher les termes suivants, en prenant soin à chaque fois de cocher la case "Résultat de la recherche"

  • apache
  • mysql
  • php

Ensuite cliquer sur "Installer"

Si les résultats des recherches sont vides cela indiquera simplement que tout est déjà installé.

2. Démarrage

Pour démarrer les serveurs, il suffit de se rendre, toujours dans le Centre de Contôle, dans la rubrique système puis Configuration des services. Vous devriez trouver dans la liste le service "httpd" et le service "mysql". Cliquez sur le bouton Démarrer.

Si vous cochez la case "Au démarrage", vous n'aurait plus à faire cette opération à chaque fois que vous allumerez votre ordinateur.

3. Initialisation

Il vous reste à créer un répertoire portant le nom "public_html" pour y mettre vos fichiers. Pour cela sous Konqueror rendez-vous dans votre répertoire personnel (en cliquant, par exemple, sur l'icon Maison" puis dans le menu "Edtion / Nouveau / Nouveau Répertoire"

Vous devez absolument changer les propriétés de ce nouveau répertoire. Pour cela en plaçant votre souris sur le répertoire public_html cliquez "Bouton Droit / Propriété / Autorisations" et cocher la case "Execution" pour les "Autres"

4. A vous de jouer

Voilà tout est installé si vous placez des fichiers PHP ou HTML dans le répertoire public_html vous pourrez y accéder depuis votre navigateur préféré en tapant l'URL suivante :

http://localhost/~votre_login/votre_fichier.php

Comment traiter les balises contenant du texte et des balises en XSL

Il arrive parfois en XML que le contenu d'une balise ne soit pas seulement du texte. En effet rien ne nous interdit de mettre du texte et des balises, par exemple :


<?xml version="1.0" ?>
<document>
 <test>
  <machin>
   Bonjour tout <gras>le monde</gras> c'est moi !
  </machin>
 </test>
</document>

Maintenant en XSL comment fait-on pour traiter correctement la balise "machin" et la balise "gras" ?

On peut tout simplement ignorer la balise "gras".


<?xml version="1.0" ?>
<xsl:stylesheet 
  version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="html"/>

  <xsl:template match="test">
    <div>
      <xsl:value-of select="."/>
    </div>
  </xsl:template>

</xsl:stylesheet>

ce qui produira :

 
 <div>
  Bonjour tout  le monde c'est moi !
 </div>
 

mais le mieux c'est quand même de la traiter !


<?xml version="1.0" ?>
<xsl:stylesheet 
  version="1.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="html"/>

  <xsl:template match="test">
    <div>
      <xsl:apply-templates/>
    </div>
  </xsl:template>

  <xsl:template match="test/text()">
      <xsl:value-of select="."/>
  </xsl:template>

  <xsl:template match="gras">
    <b>
      <xsl:value-of select="."/>
    </b>
  </xsl:template>

</xsl:stylesheet>

ce qui produira :


 <div>
  Bonjour tout  <b>le monde</b> c'est moi !
 </div>

02 avril 2003

Comment régler son BIOS avant d'installer Linux ?

Pour éviter, les problèmes lors de l'installation d'une distribution Linux, il convient de faire quelques réglages de son BIOS.

Voici quelques règles à suivre avant de critiquer l'OS au pingouin (qui n'y est pour rien)

  • désactivez la fonction APCI. En fait celle-ci peut bloquer l'utilisation d'un Winmodem ou des prises USB
  • Dites au BIOS que l'OS que vous utilisez n'est pas window$. Cette indication se traduit en spécifiant un OS non plug'n play.
  • Configuration l'USB de tel manière à ce que le BIOS initialise directement votre clavier ou votre souris USB.

Voilà, ces petits réglages ne sont pas toujours nécessaire, mais parfois ils évitent les désagréments...