Hi, Andrew F., 2002-12-03 13:48:40
I think this may because your buffered output. You can use the following to set output unbuffered/flushed before your first statement in your program. select((select(STDOUT), $| = 1)[0]); ======= At 2002-12-02, 21:01:00 you wrote: ======= >Hello all. My name is Andrew. > > I might as well get right to it. I'm writing a real basic script, since I'm still >learning Perl. It looks like this: > > >print "Input a name: "; #Prompt for a name >sleep .5; >$name1 = <STDIN>; #User input > >print "\nInput another name:"; #Second prompt >sleep .5; >$name2 = <STDIN>; #Second input > >if ($name1 eq $name2) {; #Compares two variables and returns > print "\nThese are the same."; # whether or not they are similar > } > else {; > print "\nThere are not the same."; > }; > >The problem is, when I run this, it asks for the input before it prints the visible >prompt. In other words, it treats it as if it were ordered: > >$name1 = <STDIN>; #User input >$name2 = <STDIN>; #Second input >print "Input a name: "; #Prompt for a name >sleep .5; >print "\nInput another name:"; #Second prompt >sleep .5; > >Does anyone know why it does this or how to prevent it? > >Thanks, > Andrew ======================================== Best regards. Weijie Ding [EMAIL PROTECTED] -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]