IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Dates] Exploitation d'une chaîne de caractères


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut [Dates] Exploitation d'une chaîne de caractères
    Bonjour à tous ,

    Actuellement j'integre un petit outil au site intranet de mon entreprise, il s'agit en fait de verifer les quotas disques dur des utilisateurs .
    Pour ce faire je veut evoluer de la maniere suivante :
    1 .J'importe un fichier .bat = Ok réalisé et fonctionnel
    2. J'ouvre et je lit le fichier = OK réalisé et fonctionnel
    3. Je parcours le fichier et récupére que que ce dont j'ai besoin pour faire les statistiques = AIE besoin d'aide.

    Mon fichier est de la sorte :
    Quotas are tracked on this volume
    The quota values are up to date
    Default Quota Threshold = 0xffffffffffffffff

    Change time = Wed Mar 14 10:31:15 2007
    Quota Threshold = 18446744073709551615

    Change time = Sun Mar 11 00:25:18 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 07:33:50 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 10:14:15 2007
    Quota Threshold = 18446744073709551615

    Change time = Mon Mar 12 16:05:14 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 08:56:06 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 09:40:00 2007
    Quota Threshold = 18446744073709551615

    Change time = Sat Mar 10 05:37:08 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 10:10:49 2007
    Quota Threshold = 18446744073709551615


    Quota Used = 0
    Quota Limit = 18446744073709551615
    SID Name = EMEA\CCHAROY (User)
    Quota Used = 149339136
    Quota Limit = 18446744073709551615
    SID Name = EMEA\EEVO_062_o_CO01 (User)
    Quota Used = 28780544
    Quota Limit = 18446744073709551615
    SID Name = EMEA\MGEOFFR (User)
    Quota Used = 2128526336
    Quota Limit = 18446744073709551615
    Error: No mapping between account names and security IDs was done.
    Change time = Sat Mar 10 06:33:18 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 10:20:20 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 08:58:28 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 07:42:31 2007
    Quota Threshold = 18446744073709551615

    Change time = Mon Mar 12 14:14:59 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 10:03:23 2007
    Quota Threshold = 18446744073709551615

    Change time = Wed Mar 14 08:13:01 2007
    Quota Threshold = 18446744073709551615


    Quota Used = 19922944
    Quota Limit = 18446744073709551615
    SID Name = EMEA\DABROGG (User)
    Quota Used = 2665838592
    Quota Limit = 18446744073709551615
    SID Name = EMEA\FRBERGE (User)
    Quota Used = 1709511680
    Quota Limit = 18446744073709551615
    SID Name = EMEA\LPETITP (User)
    Quota Used = 339729408
    Quota Limit = 18446744073709551615
    SID Name = EMEA\DLOGEAI (User)
    Quota Used = 38956032
    Quota Limit = 18446744073709551615
    SID Name = EMEA\PHZOVI (User)
    Quota Used = 25517056
    Quota Limit = 18446744073709551615
    SID Name = EMEA\CCHEVRI (User)
    Quota Used = 40891392
    Quota Limit = 18446744073709551615
    SID Name = EMEA\GEREITE (User)
    Quota Used = 361782272
    Quota Limit = 18446744073709551615
    SID Name = EMEA\SROMBAU (User)
    Quota Used = 37264384
    Quota Limit = 18446744073709551615
    Voila une maigre partie .
    J'aimerai retirer de cette grande chaine les éléments suivants :
    SID NAME : +Nom
    Quota Used : ./..
    Quota limit : ....

    Sans me soucier des messages d'erreurs qui peut avoir dans le fichier .dat .
    Merci de m'apporter votre aide .
    Cordialement

  2. #2
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Evolution,
    Voila en regardant a droite a gauche sur le web il en est ressorti ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <?php
    //variables globales
    $fichier = "/home/httpd/dev/_it_tools/files/quota.dat";
     
     
    //Test si le fichier est bien sur le serveur :
    if (file_exists($fichier)) 
    {
    	//Ouvre le fichier
    	$monfichier = fopen("$fichier", "r+");
    	//Boucle tant que non fin de fichier 
    	while(!feof($monfichier))
    	{
    		//Lecture du fichier
    		$texte =(fgets($monfichier)."<br>");
    		//echo($texte);
    		//Prelevement des portions de chaines utiles
    		$SID_Name = (strstr($texte, "SID Name"));
    		//Modification du Name 
    		$SID_Modif = (str_replace("EMEA\\","", $SID_Name));
    		//Recherche du quota
    		$Quota = (strstr($texte ,"Quota Used "));
    		//Affichage des resultats
    		echo($SID_Modif);
    		echo($Quota );
    	}
    	// Fermeture du fichier
    	fclose($monfichier);
     
    }else{
    	echo("Le fichier n'existe pas sur le serveur");
    }
     
     
    ?>
    Est-ce la bonne maniere existe t-il des fonctions plus rapide en exécution ???
    Suis-je tout simplement sur la bonne voie ?

  3. #3
    Membre éclairé Avatar de nako
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2003
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2003
    Messages : 577
    Points : 663
    Points
    663
    Par défaut
    Salut,
    si tu veux faire ça en PHP, tu pourrais avoir besoin des fonctions suivantes :

    http://us.php.net/manual/fr/function.file.php
    ou
    http://us.php.net/manual/fr/function.fopen.php
    http://us.php.net/manual/fr/function.fread.php
    http://us.php.net/manual/fr/function.fclose.php
    pour lire le fichier.

    Ensuite, en parcourant ton fichier (ligne à ligne), tu fais une comparaison avec le début de la ligne, en utilisatn par exemple la fonction
    http://us.php.net/manual/fr/function.strpos.php

    Ton problème est plutôt un problème PHP ou un problème d'algo ?

    Citation Envoyé par javaboy
    Suis-je tout simplement sur la bonne voie ?
    Ca me semble pas trop mal, non ?
    Tu as ce que tu veux ?

    A+, nako.

  4. #4
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    En quelque sorte oui ...
    La je bloque sur comment mettre tout cela dans une table SQL , tout ce qui est connexion ... je connais plus ou moin , mais en gros j'aimerai faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $query = ("INSERT INTO Quota_".$sql_table." VALUES(\"$SID_Modif_Alias\",\"$Error_Modif\",\"$Quota\";");		
    		$result= mysql_query($query);
    		echo($query);
    		echo($serveur."_".$sql_table);
    		echo($result);
    		if (mysql_error())
    		{
    			echo("Erreur SQL");
    		}
    	// Fermeture du fichier
    	fclose($monfichier);
    Et la je bloque ca ne donne rien ...
    Sinon merci pour les liens ils sont bien utiles .

  5. #5
    Membre éclairé Avatar de nako
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2003
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2003
    Messages : 577
    Points : 663
    Points
    663
    Par défaut
    Citation Envoyé par javaboy
    Et la je bloque ca ne donne rien ...
    Si c'est une erreur MySQL, tu peux faire afficher l'erreur parce que la fonction mysql_error http://us.php.net/manual/fr/function.mysql-error.php retourne le texte de l'erreur !
    Sinon, je sais pas trop ...
    Mais sur le principe, tu y es, il doit manquer une erreur de syntaxe ou autre.
    a+

  6. #6
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    250
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Janvier 2006
    Messages : 250
    Points : 99
    Points
    99
    Par défaut
    Je crois que c'est plus compliquer que cela je me penche sur la question et je verrai par la suite ...
    Merci en attendant
    Aller je mets résolu je réouvrirai un post au cas ou ..
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Réponses: 3
    Dernier message: 09/02/2009, 17h46
  3. Date vers une chaîne de caractère
    Par luditjma dans le forum Oracle
    Réponses: 2
    Dernier message: 15/11/2006, 09h40
  4. Réponses: 4
    Dernier message: 21/09/2005, 17h35
  5. Réponses: 3
    Dernier message: 09/05/2002, 01h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo