fonction PHP pour tester l’existence d’une page web distante

logo php

Cette fonction PHP vous retournera un boolean FALSE ou TRUE vous indiquant si la page distante existe. Vous devez simplement l’appelez avec l’URL à tester.
Ce code peut vous servir dans le cas d’un parse de contenu sur une URL. Comme avec « simple html dom » qui peut vous retourner une erreur 404 si le lien distant n’est pas trouvé.
ex:

failed to open stream: HTTP request failed! HTTP/1.1 404 NOT FOUND

Le code ci-dessous analyse simplement la valeur du « header » obtenu avec la fonction « get_headers« , le « @ » devant la fonction permet de masquer les éventuelles erreurs d’affichage qui pourrai survenir.

ex: bool(false) / bool(true)

Continuer la lecture de fonction PHP pour tester l’existence d’une page web distante

PHP: Vérifier avec des expressions régulières et supprimer des éléments d’un tableau

logo php

Pour vérifier et supprimer des éléments d’un tableau PHP nous allons faire appel aux notions de parcours de tableau mais aussi d’expression régulières qui vous apporte un confort dans la vérification de la syntaxe d’une chaîne.

    Les fonctions php que nous allons utiliser sont les suivantes :

  • preg_replace () : cette fonction remplace un élément d’une chaîne par un autre.
  • strlen() : Vous retourne la longueur de la chaîne donné en paramètre.
  • explode() : Vous découpe une chaîne suivant les paramètres que vous lui fournissez.
  • count() : Vous retourne la longueur d’un tableau, (le nombres de « case »)

decoupe et gestion de chaine php

Pour tester notre code nous allons déclaré un tableau contenant les éléments à bannir et un autre tableau contenant les éléments à traiter.

$banned = array("/div/", "/font/", "/color/", "/href/", "/width/", "/table/", "/height/", "/border/", "/align/", "/class/");
$content = array("poulet", "de", "soir", "color", "href", "souris", "table", "le", "ciel", "noir", "border", "class", "chien", "chat", "mickey");

Continuer la lecture de PHP: Vérifier avec des expressions régulières et supprimer des éléments d’un tableau

Utiliser CURL et PHP pour récupérer du texte sur un site distant

Pour récupérer le contenu d’une page distante en php j’ai utilisé la librairie CURL. Dans un précédent billet j’expliquais comment récupérer un élément de la page distante via son id ou le nom du tag. (Une div, un p ext…)

Dans ce billet, le script présenté vous permet de récupérer le contenu total de la page distante et vous affiche le nombre de fois qu’un mot est présent sur cette page.
Il est présenté de façon brute sans aucun css ce qui rend le code plus lisible. J’ai commenté certaine ligne, toutefois si vous avez des difficultés ou besoin de précisions vous pouvez me contacter.
(Consultez mon premier article pour récupérer un élement d’un page distante avec CURL)

curl recuperer des mots distants

Continuer la lecture de Utiliser CURL et PHP pour récupérer du texte sur un site distant

Travaux Pratiques BTS SIO – Synchronisation d’utilisateurs Active Directory avec SAMBA

Partie 1 : Configuration de Debian avec votre Active Directory

Dans le cadre du PPE il est demandé de réaliser des travaux avec la mise en pratique de divers compétences. Dans ce sujet nous avons en place un Windows Server 2008 avec nos utilisateurs et nous désirons installer un serveur de fichiers SAMBA via la distribution Linux DEBIAN 6.0.3.

Mettez à jour votre Debian avec la commande « aptitude update » puis « aptitude dist-upgrade », mettez à jour vos source./etc/apt/sources.list
Si vous possédez des problèmes de dépendances, effectuez un apt-get install -f

## squeeze
deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free

## squeeze multimedia
deb http://www.debian-multimedia.org squeeze main non-free
deb-src http://mirror.home-dn.net/debian-multimedia squeeze main

# squeeze security
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

# squeeze update
deb http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free

Pour plus de confort vous pouvez créer un nouveau dossier partagé entre votre host et votre machine virtuelle via la commande :

Vmware

mkdir /mnt/partage
mount -t vmhgfs .host:/ /mnt/partage

Virtualbox

mkdir /mnt/partage
mount -t vboxsf NOMDUPARTAGEVB /mnt/partage

puis installez sur votre debian les deux package suivant : samba winbind

apt-get install samba winbind  krb5-user libpam-krb5

Configuration Windows Serveur 2008

  • Nom de l’ordinateur: SRV1PPEGR5
  • Nom Complet: SRV1PPEGR5.SRV1.PPEGR5.LOCAL
  • Domaine: SRV1.PPEGR5.LOCAL

Adressage IP Windows Serveur 2008

  • IP: 10.0.0.100
  • Masque: 255.0.0.0
  • Paserelle: 10.0.0.100
  • DNS: 127.0.0.1

configuration system windows serveur 2008

Continuer la lecture de Travaux Pratiques BTS SIO – Synchronisation d’utilisateurs Active Directory avec SAMBA

Comparer deux dates sur Excel et utiliser la mise en forme conditionnel

Excel est un outil de gestion de feuille de calcul bien connu de tous et permet de se faciliter la vie lorsque l’on souhaite gérer un stock, ou autres. Je l’utilise pour ma part dans la gestion de service après vente de certain produit. La fonction que je propose dans ce billet permet de comparer la date de réception d’un produit avec la date actuelle(Fonction « AUJOURDHUI() »). Et grâce à la mise en forme conditionnel vous pouvez afficher si votre produit et encore sous garantie ou non.

aperçu formualire excel comparaison date

Pour cela j’utilise une condition SI qui va me comparer la date de réception du produit plus une année avec la date du jour. Et si la date du jour est inférieur ou égal à celle de la date de réception je considère que mon produit n’est plus sous garantie.

Continuer la lecture de Comparer deux dates sur Excel et utiliser la mise en forme conditionnel

Travaux pratique sur les types structurés, fonctions et procédures en Algorithmique

Dans le billet précédent je décrivais les syntaxes des types structurés. Dans le cadre du BTS SIO il est important de maîtriser également les fonctions et procédure. Le sujet du tp est le suivant : Vous devez mettre en place un algorithme demandant à l’utilisateur de saisir un code vendeur, puis une vente de ce vendeur.

type structure et fonction et procedure en algorithmique

Le nombre de vendeur et de vente est au choix de l’utilisateur, il est à définir en début de programme. Pour ce faire vous devez créer la procédure afin de compléter le tableaux des ventes et des vendeurs. Et une fonction qui va calculer le total des ventes suivant l' »id vendeur » que l’utilisateur lui retourne.

Le programme en lui même est très court, l’exercice repose sur la déclaration des types, de la procédure et de la fonction.

Début
  |  Afficher ( "Saisir le nombre de vente" )
  |  Saisir ( nb_vente )
  |  remplir_tableau ( nb_vente )
  |  Afficher ( "Saisir le code du vendeur pour son total" )
  |  Saisir ( CodeVendeur )
  |  rez <- VENTES_VENDEUR ( nb_vente , CodeVendeur )
Fin

Continuer la lecture de Travaux pratique sur les types structurés, fonctions et procédures en Algorithmique

Les types structurés en Algorithmique, le complément aux tableaux

Pour vulgariser ce chapitre les types structurés il s’agit simplement de tableau dont les éléments ne sont pas du même type, contrairement aux tableaux ou chaque enregistrement sont de types similaire sur la même entité.
Ce chapitre rejoin la notion de base de donnée dans la méthode Merise. On qualifie les éléments qui composent un enregistrement comme des champs.
On déclare un type structuré dans un bloc appelé TYPE.

Exemple :

 Type Panier_Fruit
nom:chaine
quantitee:entier
prix_unitaire:reel


Pour utiliser un type structuré après l’avoir déclaré il faut déclaré les variables qui feront appel aux différents champs.
Grace à cette déclaration on peut à présent apeler chaque élément grace à son champ.

Continuer la lecture de Les types structurés en Algorithmique, le complément aux tableaux

Insérer des résultats SQL dans un tableau php

logo php

Lorsque vous faite du traitement PHP et SQL il devient rapidement très pratique de pouvoir stocker le résultat de vos requêtes SQL dans un tableau PHP.

resultat sql dans tableau php

Je fournis dans l’article un code source de 7 lignes vous permettant un traitement plus facile sur vos résultats. Dans ce code il vous suffit d’appeler via son identifiant de tableau votre résultat.

Le code est assez explicite, j’utilise néanmoins deux fonctions qui sont sizeof() comparable à count() vous permettant d’avoir la longeur de votre tableau et ainsi adapter le nombre de tour de boucle nécéssaire, ainsi que ucfirst() qui met la première lettre de votre chaîne en majuscule.

Continuer la lecture de Insérer des résultats SQL dans un tableau php

Selectionner plusieurs éléments avec des sous-requêtes SQL

Dans cet article je vais présenter la notion de « sous-requête SQL« , elle vous permet de séléctionner plusieurs éléments dans une seul requête complété par des sous requêtes. Je vais détailler mon exemple ci-dessous.

Je vais me concentrer uniquement sur la notion de sous-requête. L’exemple que j’utilise ci-dessous est très simple et rapide à mettre en place via XAMPP ou WAMP.

sous requete sql

Je possède une base de donnée « dictionnaire« , dans cette base de donnée je possède une table « mot » qui contient 3 colonnes.

id,content,famille

Continuer la lecture de Selectionner plusieurs éléments avec des sous-requêtes SQL