Naviguation dans :  Perl  JavaScript  Détail  - load.cgi?Appel=baseAdmin
 présentée :  par cas d'appel   par traitements 
Retour à l'accueil
  
     
 Requêtes 

 load – Admin 

 baseAdmin 

Requêtes de Ça-déménage.com
Accès professionnel
Chargement de la base
 submit | Finer | Errer | Execer | fromClient | toDBase | fromDBase | toClient 
  
 
 Bibliothèque CaD  Bibliothèque de Ça-déménage.com
 
  
  
 Bibliothèque 

 Parse 

 Parser 

Bibliothèque standard
Fonctions de parse des données reçues du client
Recevoir des données issues du client
  


 Parser  Recevoir des données issues du client
Syntaxe Parser(FORM)
Paramètres 
nom  type  Description 
–  IN Données issues du client
FORM  OUT Hash des champs reçus
Perl : hash passé par référence – JavaScript : tableau à 1 élément
retourne  OUT  0 : Traitement correct
1 : REQUEST_METHOD incorrecte (ni GET ni POST)
2 : Données trop grandes (maximum 20 ko)
3 : Présence de caractères de contrôle autres que \n et \r (%0A et %0D)
Fonctions util. Néant


Code Perl 

sub Parser {local ($FORM) = @_; 
 local $in;
 if ($ENV{'REQUEST_METHOD'} eq 'GET') {$in = $ENV{'QUERY_STRING'}}
 elsif ($ENV{'REQUEST_METHOD'} eq 'POST') {read(STDIN, $in, $ENV{'CONTENT_LENGTH'})}
 else {return 1}
 if (length($in)>20000) {return 2};
 $in =~ s/%(0[aAdD])/pack("C",hex($1))/eg; if ($in=~/%([0-1][0-9a-fA-F])/) {return 3};
 my @pairs = split(/&/, $in);
 foreach (@pairs) {
  local ($nom, $val) = split(/=/, $_);
  $nom =~ tr/+/ /; $nom =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $nom =~ tr/\0//d;
  $val =~ tr/+/ /; $val =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $val =~ tr/\0//d;
  if ($$FORM{$nom} eq '') {$$FORM{$nom} = $val} else {$$FORM{$nom} = "$$FORM{$nom},$val"}
 }
 return 0;
}
Code JavaScript 

function Parser(FORM) { 
 return 0
}