On Mon, 28 Jan 2002, Thierry Lombardot wrote:

> Oui, mais mon problème est que le 2ème CGI (celui qui est appelé par le 
> premier) veut manger du STDIN, et je ne veux pas le modifier. Si STDIN 
> est lu par le premier CGI, il n'est plus disponible pour le 2ème. Si je 

STDIN est en règle générale consommable, et n'implémente pas la fonction
seek().  Ce que le premier script a consommé n'est plus disponible pour le
deuxième!

Une solution mauvaise serait de faire:

   open(SCRIPT_2, "|script_2") or die("...");

   print SCRIPT_2 "les données que vous avez déjà consommées";
   while (<STDIN>) {
      print SCRIPT_2 $_;
   }

   close(SCRIPT_2) or die("...");

# en bref, réinjecter dans le script 2 ce que vous avez consommé, ainsi
# que ce que vous n'avez pas consommé.

Mais à mon avis un redesign est nécessaire pour faire les choses
proprement.


--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se désabonner aussi.

Répondre à