Guest User

Untitled

a guest
Jun 23rd, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.61 KB | None | 0 0
  1. #!/usr/bin/perl
  2. read(STDIN,$temp,$ENV{'CONTENT_LENGTH'});
  3. {$temp = "$temp\&$ENV{'QUERY_STRING'}";}
  4. @pairs=split(/&/,$temp);
  5. foreach $item(@pairs)
  6.  {
  7.   ($mots,$content)=split(/=/,$item,2);
  8.   $content=~tr/+/ /;
  9.   $content=~s/%(..)/pack("c",hex($1))/ge;
  10.   $content =~ s/\</</g;
  11.   $content =~ s/\>/>/g;
  12.   $content{$mots}="$content";
  13.   $champs{$mots} .= "\0" if (defined($champs{$mots}));
  14.   $champs{$mots} .= "$content";
  15.  }
  16. require "config.pl";
  17. $num_lot = $champs{'lot'};
  18. open(FICHIER, "<$fic_lots");
  19. flock (FICHIER, 1);
  20. @FICHIER = <FICHIER>;
  21. flock (FICHIER, 8);
  22. close(FICHIER);
  23. if (($FICHIER[$num_lot] eq '') || ($num_lot eq '')) { print "Content-type: text/html\n\n"; print "<b>ERREUR !!!<br>LOT INEXISTANT !!</b>"; exit; }
  24. ($nom,$num_gagnant,$num_en_cours,$aff_num) = split(/\|/, $FICHIER[$num_lot]);
  25. $num_en_cours++; $i = @FICHIER; $i--;
  26. if ($num_en_cours == $num_gagnant)
  27.    {
  28.    foreach $i(0..$i)
  29.            {
  30.            if ($i == $num_lot) { $news .= "$nom\|$num_gagnant\|0\|$aff_num\|\n"; }
  31.            else { $news .= $FICHIER[$i]; }
  32.            }
  33.    open(DATA2, ">$fic_lots");
  34.    flock (DATA2, 2);
  35.    print DATA2 $news;
  36.    close (DATA2);
  37.    flock (DATA2, 8);
  38.    print "Location: $cgi_aff_gain?lot=$num_lot\n\n";
  39.    exit;
  40.    }
  41. else {
  42.    foreach $i(0..$i)
  43.            {
  44.            if ($i == $num_lot) { $news .= "$nom\|$num_gagnant\|$num_en_cours\|$aff_num\|\n"; }
  45.            else { $news .= $FICHIER[$i]; }
  46.            }
  47.    open(DATA2, ">$fic_lots");
  48.    flock (DATA2, 2);
  49.    print DATA2 $news;
  50.    close (DATA2);
  51.    flock (DATA2, 8);
  52.    print "Location: $cgi_aff_perdu?lot=$num_lot\n\n";
  53.    exit;
  54. }
Add Comment
Please, Sign In to add comment