Archive

Archives de l'auteur

PHP : Convertir une date en timestamp

Pour convertir une date sous forme de chaine de caractère en timestamp, il existe en PHP la fonction strtotime() qui prend en paramètre une date au format YYYY/MM/DD HH:MM:SS ou dans d’autres formats (voir documentation) et retourne un entier contenant le timestamp de cette date.

<?php
//Affichera 1275590292
echo strtotime("2010/06/03 20:38:12");
?>
Share on Facebook
Categories: Tutoriels Tags:

GTK+ Installation du SDK

GTK+2.0 est une libraire graphique permettant la réalisation de logiciels pouvant par la suite être compilé sur différents OS.

Nous allons donc voir comment installer et compiler avec cette librairie sous Linux.

Installation

Pour installer GTK, il suffit d’entrer la commander suivant qui va installer toutes les dépendances nécessaire au développement d’une application.

sudo apt-get install libgtk2.0-dev libgtk2.0-bin libgtk2.0-common libgtk2.0-0

Compilation

Pour la compilation de votre programme, il faut utiliser le logiciel pkg-config qui va s’occuper de linker GTK à votre programme.

g++ main.cpp -o mafenetre `pkg-config --cflags --libs gtk+-2.0`

Exemple de code

Voici un code basique qui vous permettra de tester si l’installation et la compilation se sont bien déroulé. Ce code va vous afficher une fenêtre.

#include <stdlib.h>
#include <gtk/gtk.h>

int main (int argc, char **argv)
{
 GtkWidget *p_window = NULL;

 /* Initialisation de GTK+ */
 gtk_init (&argc, &argv);

 /* Creation de la fenetre principale de notre application */
 p_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
/* Creation du signal qui permet de quitter l'application */
 g_signal_connect (G_OBJECT (p_window), "destroy",
 G_CALLBACK (gtk_main_quit), NULL);

/* Affichage de la fenetre principale */
gtk_widget_show (p_window);

/* Lancement de la boucle principale */
gtk_main ();

return EXIT_SUCCESS;
}

En savoir plus

Page Wikipedia Pkg-config : http://fr.wikipedia.org/wiki/Pkg-config

Share on Facebook
Categories: Tutoriels Tags: , ,

SFML Installation et Compilation

La librairie SFML est une librairie permettant le développement d’applications multimédias. Cette librairie écrite en C++ mais également dans d’autres langages se veut être une alternative objet à SDL.

Elle est composé de différents modules à savoir :

  • module système : il gère l’horloge et les threads
  • module graphique : tout ce qui est affichage d’images
  • module réseau : il simplifie l’utilisation des sockets
  • module son : il permet de jouer des musiques et son dans son application
  • module fenêtre : utilisé pour la création des fenêtres et l’interaction de l’utilisateur avec le programme

Nous allons voir comment installer et compiler avec cette librairie sous Linux et Windows.

Linux

Installation

Pour installer le SDK de SFML, rendez-vous sur le site officiel dans la section téléchargement puis téléchargez la dernière version pour le C++ nommé SFML Full SDK.
Une fois téléchargé, décompresser l’archive puis ouvrez une nouvelle fenêtre nautilus en root dans le dossier /usr/.

sudo nautilus /usr/

Dans ce dossier vous allez placer les fichiers de l’archive SFML à savoir les fichiers SFML-1.6/lib/ dans /usr/libs/ et le dossier SFML-1.6/includes/SFML dans /usr/includes/ en faisant des copier/coller.
Une fois cette étape franchie, vous avez fini l’installation et pouvez compiler.

Compilation

Pour la compilation, ouvre un terminal et entre simplement pour compiler l’exemple donné ci-dessous :

g++ main.cpp -o horloge -lsfml-system

Les linker à mettre dépendent des modules que vous allez utiliser. Ce sont les fichiers que vous avez placé dans le dossier /usr/libs.

Windows

Installation

Sous Windows, la démarche est la même, sur la page de téléchargement, prenez l’archive SDK Complet SFML pour MinGW (Code Block).
Ensuite, décompressez l’archive puis mettez dans C:\MinGW\include\ le dossier SFML-1.6\include\SFML et mettez les fichiers de ayant l’extension ‘.a’ (à savoir libsfml-audio.a, libsfml-graphics.a, libsfml-main.a, libsfml-network.a, libsfml-system.a, libsfml-window.a) dans le dossier librairie de MinGW (C:\MinGW\lib) et enfin les dll seront à ajouter dans le dossier de votre programme.
Ces dll sont à ajouter suivant les librairies que vous utiliserez et inclurez dans votre projet lors de la compilation.

Compilation

De la même manière que sous Linux, pour compiler vos projet ou l’exemple donné ci-dessous, utilisez dans une console g++ de la manière suivante :

g++ main.cpp -o horloge -lsfml-system

Exemple d’un programme

Voici un programme tiré de la documentation officielle. Si vous arrivez à le compiler, c’est que l’installation c’est bien passé.

#include <SFML/System.hpp>
#include <iostream>

int main()
{
    sf::Clock Clock;
    while (Clock.GetElapsedTime() < 5.f)
    {
        std::cout << Clock.GetElapsedTime() << std::endl;
        sf::Sleep(0.5f);
    }

    return 0;
}

Le résultat n’est pas formidable, il vous affiche le temps depuis lequel le programme est démarré dans un terminal. Le but n’était pas de réaliser un super jeu mais de savoir installer cette librairie et maintenant c’est à vous de jouer !

Share on Facebook
Categories: Tutoriels Tags: , , ,

Ubuntu : Imprimantes BROTHER

Il peut arriver que vous ayez besoin d’imprimer avec votre jolie imprimante mais sous Ubuntu c’est souvent la galère pour trouver les bons drivers…

Brother Logo

Que Nénies ! Les petits gars de chez BROTHER ont pensé à tout ! En effet, vous pouvez retrouver une liste de tous les drivers de leurs imprimantes à cette page :
http://biturl.fr/BrotherDrivers
C’est clair, simple et pas besoin de passer des heures pour trouver les drivers dont vous avez besoin…

Les Scanners

Dans le même esprit, vous pouvez avoir à utiliser un scanner. La manipulation est un peu plus compliqué et je vais donc prendre un exemple. Dans mon cas il s’agit d’un scanner pour une imprimante DCP-145C qui sera connecté en USB. Dans un premier temps, nous allons télécharger les drivers puis dans un second temps nous ferons une petite manipulation mais tout est expliqué sur leur site alors ce ne sera pas bien compliqué…

Rendez-vous sur http://biturl.fr/BrotherInsScan et cliquez sur le premier lien pour les drivers de votre scanner en USB. Choisissez ensuite la page de « Step 3″ qui est en faite la page pour télécharger les drivers en question. Faite une recherche pour trouver le modèle de votre imprimante puis téléchargez les .deb pour brscan3_32bit et scan-key-tool_3bit puis installez les. Une fois cela fait retournez sur la première page et cliquez sur « Setting for normal users ». Sur cette pages vous avez pas mal d’instructions pour toutes les distributions Linux mais l’idée pour Ubuntu est d’éditer c’est d’éditer le fichier /lib/udev/rules.d/40-libsane.rules et d’ajouter la ligne suivante en haut du fichier :

# Brother scanners
ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"

Vous rebooter votre OS et votre scanner fonctionnera avec par exemple le logiciel Simple Scan.

Share on Facebook
Categories: Tutoriels Tags: , ,

htaccess : Pages d’erreurs personnalisées

Il peut être sympathique pour un site web connu de proposer ses pages d’erreurs personnalisées. J’entends par là de ne plus avoir la page blanche avec le texte « Erreur 404″ écrit.
De cette manière, vous pouvez (si vous faites un système de journal de log) savoir toutes les erreurs qui ont été générer par votre site.
Nous allons donc rediriger les erreurs HTTP qui nous intéresses vers des pages PHP.

Dans le fichier .htaccess que vous placez à la racine de votre site web, entrez la ligne ci-dessous.

ErrorDocument 404 http://nomdomaine.ltd/error404.php

Il ne vous reste plus qu’a créer le fichier error404.php pour afficher votre message d’erreur personnalisé.

<?php
echo 'erreur404';
?>

C’est un exemple simplifié mais l’idée est là. Vous pouvez donc rediriger toutes les erreurs HTTP que vous souhaitez en ajoutant une ligne pour chaque erreur.

En savoir plus

Liste des erreurs HTTP : http://biturl.fr/HTTPErreurs

Share on Facebook
Categories: Tutoriels Tags: