Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

php4 - commandes system - pipe - flush

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
rog
WRInaute accro
WRInaute accro

Inscrit le: 21 Sep 2006
Messages: 1662
Localisation: sapucaia do sul (RS)

URL permanente de ce messagePosté le : Mar Avr 03, 2007 11:07    Sujet du message: php4 - commandes system - pipe - flush

j'aimerai savoir si quelqu'un a trouvé un moyen de piper un retour de commande system en "temps réel" vers le navigateur

style un scp -r sur un rep bien rempli j'aurai aimé voir aparaitre le retour systeme ligne par ligne dans mon navigateur
lol

rog
 
rog Visiter le site web du posteur
julienr
WRInaute passionné
WRInaute passionné

Inscrit le: 05 Aoû 2003
Messages: 645

URL permanente de ce messagePosté le : Mar Avr 03, 2007 12:52    Sujet du message: php4 - commandes system - pipe - flush

héhé,
peut être qu'en passant par un fichier c'est jouable Smile
avec deux php :
un qui execute system avec redirection des sorties vers le fichier
un qui lit le fichier en boucle
mais bon c sans doute pas gagné Smile
 
julienr Visiter le site web du posteur
easy_zik
WRInaute impliqué
WRInaute impliqué

Inscrit le: 07 Juil 2003
Messages: 388

URL permanente de ce messagePosté le : Mar Avr 03, 2007 16:41    Sujet du message: php4 - commandes system - pipe - flush

http://fr.php.net/manual/fr/function.proc-open.php

Wink
 
easy_zik Visiter le site web du posteur
rog
WRInaute accro
WRInaute accro

Inscrit le: 21 Sep 2006
Messages: 1662
Localisation: sapucaia do sul (RS)

URL permanente de ce messagePosté le : Mar Avr 03, 2007 18:00    Sujet du message: php4 - commandes system - pipe - flush

j'ai essay& mais ça ne le fait qu'en php-cli

est-ce que quelqu'un a dejà réussi ?

rog
 
rog Visiter le site web du posteur
julienr
WRInaute passionné
WRInaute passionné

Inscrit le: 05 Aoû 2003
Messages: 645

URL permanente de ce messagePosté le : Mer Avr 04, 2007 10:43    Sujet du message: php4 - commandes system - pipe - flush

Code:
<?php
        $cmd = 'wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.37-linux-i686.tar.gz/'
        $cmd .= 'from/http://ftp.club-internet.fr/mirrors/ftp.mysql.com/';
        error_reporting(E_ALL);
        $handle = popen( $cmd.' 2>&1', 'r');
        while( $read = fread($handle, 100) ) {
                echo nl2br($read);
                flush();
        }
        pclose($handle);
?>

testé sur mon serveur ca affiche en live le téléchargement du fichier

rog a écrit:
j'ai essay& mais ça ne le fait qu'en php-cli
c quoi ta config toi ?
 
julienr Visiter le site web du posteur
rog
WRInaute accro
WRInaute accro

Inscrit le: 21 Sep 2006
Messages: 1662
Localisation: sapucaia do sul (RS)

URL permanente de ce messagePosté le : Mer Avr 04, 2007 18:08    Sujet du message: php4 - commandes system - pipe - flush

moi j'ai un server linux

merci d'avoir pris le temps de tester mais ça ne fonctionne toujours pas

des qu'il y a du html ça bloque tout par contre ton exemple m'a eclairé et je vais le transformer en ajax

ça va debugger mon script puisque c'est le client qui va demander l'execution systeme

en plus la c'est pour un webmin qui permet au client de gérer ses sauvegardes distantes, comme un maj peut prendre 30 minutes, il est indispensable qu'il y ait un retour en temps réel

rog
 
rog Visiter le site web du posteur
rog
WRInaute accro
WRInaute accro

Inscrit le: 21 Sep 2006
Messages: 1662
Localisation: sapucaia do sul (RS)

URL permanente de ce messagePosté le : Ven Avr 06, 2007 10:08    Sujet du message: php4 - commandes system - pipe - flush

edit :

il y a des differences de comportement entre FF et IE

sur ce coup la FF l'a emporté haut la main
lol

comme j'ai fait tous mes tests de dev sous IE, le script ajax etait cool jusqu'au au document.write

j'ai quand developpé une version très austère en html qui a marché sous IE

ma prochaine release sera donc debugguée sous FF

merci encore

rog
 
rog Visiter le site web du posteur
julienr
WRInaute passionné
WRInaute passionné

Inscrit le: 05 Aoû 2003
Messages: 645

URL permanente de ce messagePosté le : Ven Avr 06, 2007 13:25    Sujet du message: php4 - commandes system - pipe - flush

Un truc qui va pas sur mon script, c'est l'affichage qui se fait au fure et à mesure dans la page et qu'une fois arrivé en bas de la page, il faut scroller en permanence manuellement pour voir la suite de la trace.
Dans un terminal le scroll se fait vers le haut, ce qui fait qu'on voit toujours la derniere ligne écrite
Comment faire pour générer un comportement identique ? avec du css ? du js ?
 
julienr Visiter le site web du posteur
rog
WRInaute accro
WRInaute accro

Inscrit le: 21 Sep 2006
Messages: 1662
Localisation: sapucaia do sul (RS)

URL permanente de ce messagePosté le : Ven Avr 06, 2007 14:42    Sujet du message: php4 - commandes system - pipe - flush

ça c'est une bonne colle, faudrait que j'y réfléchisse

Code:
#################################################################################################################
#                           launch rsync command through a shell file                           #
#################################################################################################################
elseif(isset($_REQUEST['op']) && $_REQUEST['op'] == 'bak')
{
#checking the config was not bypassed
# action
if(!$key = array_search($_REQUEST["_input_action"],$action))
   {
   die("bad action");
   }
   elseif(!isset($comp[$_REQUEST["_input_comp"]]))
      {
      die("bad computer");
      }
   elseif(!isset($module_dir[$_REQUEST["_input_module"]]))
      {
      die("bad module");
      }
#################################################################################################################
# find the shell file
#$tunnel = SSH.' '.ID_DSA_KEY_APACHE." -L ".$local_port[$computer].":".$target_server[$computer].":".REMOTE_PORT." SvcwRsync@".$sshd_server[$computer]." -T -N -f";
#
define('SHELL_FILE',$_SERVER['DOCUMENT_ROOT']."/command/".$_REQUEST["_input_action"].'/'.$_REQUEST["_input_comp"].$_REQUEST["_input_module"].'.sh');
#
#
echo ('--------------------------------------------------------------------------------------------<br>');
echo ('commande : '.$_REQUEST["_input_action"]." le module ".$module_name[$_REQUEST["_input_module"]]." de l'ordinateur ".$comp[$_REQUEST["_input_comp"]]);
echo ('<br>--------------------------------------------------------------------------------------------<br>');
flush();
flush();
echo ('<u>Requête en cours de traitement</u><br>');
flush();
flush();
#
$fp = fopen(LOG_FILENAME,"w+");
#
if(is_file(SHELL_FILE))
   {
   #$output = shell_exec('/bin/sh '.$shell_file." &>".LOG_FILENAME);   
   $output = '';
   #
    $handle = popen(SHELL_PATH.' '.SHELL_FILE.' 2>&1','r');
   #      
    while($read = fread($handle,100))
      {
        echo nl2br($read);
      fwrite($fp,$read);
      flush();
      #
      #$output = $read;
        }
    pclose($handle);

   #print($output);
   }
#
echo ('<u>Transfert terminé</u>');
flush();
flush();
#
#$fp = fopen(LOG_FILENAME,"w+");
#fwrite($fp,$output);
fclose($fp);


mais comme tu peux le voir je vais déjà bien stabiliser cetter version

rog
 
rog Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Autres sujets de discussion :

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort