Tutoriels Trucsweb
          

 

Niveau : INTERMÉDIAIRE (Consulté 75,645 fois)
Compatibilité : Serveur NT/2000 IIS

  Ajouter aux favoris  Envoyer à un ami  Version imprimable

Introduction aux Fonctions

Les procédures ASP, JScript et VBScript

   par Django (Oznog) Blais, Trucsweb (1er Novembre 1999)


Tout sur les fonctions ASP. Une procédure est un groupe de commande qui effectue une tâche spécifique et qui peut retourner une valeur. Vous pouvez définir vos propres procédures afin de simplifier votre code en réutilisant des sections de code redondant. Si vous faite le même traitement plusieurs fois dans votre code, par exemple un calcul qui revient souvent, vous pouvez créer une procédure pour cette tâche que vous pourrez réutiliser à tout moment.

Vous pouvez mettre cette procédure dans le même document .asp qui l'appelle ou vous pouvez mettre vos procédures communes dans un fichier partagé en utilisant la directive #INCLUDE pour inclure vos procédures dans d'autres fichiers .asp qui appelle la procédure. Une bonne alternative est " d'encapsuler " cette tâche dans une composante COM. Une procédure est une fonction ou " FUNCTION " en ASP.

Il existe deux types de procédure, il y a les " built-in " et les " user-defined ". C'est à dire les procédures incluse dans le ASP que vous n'avez pas à définir (vois une liste de fonctions plus loin dans le tutoriel) et les procédure créé par vous.

Définir une procédure
La définition d'une procédure se fait entre les délimitations ASP <% et %> mais peut être mis entre les balises <SCRIPT> et </SCRIPT> tout en respectant les règles de déclaration des langages " script " utilisés. Ceci afin de permettre au ASP d'appeler des procédures Javascript ou même JScript et VBScript.

- En asp

<% 
Function NomDeMaFonction(argument 1,argument 2 etc)
    tâches de la procédure
End Function
%>

- En VBScript

<%@ LANGUAGE=VBScript %>
<% 
Sub NomDeMaFonction(argument 1,argument 2 etc)
    tâches de la procédure
End Sub
%>

Quand vous utiliser la balise HTML <SCRIPT>, vous devez spécifier deux attributs pour indiquer que la tâche sera effectué par le serveur.

- En JScript

<SCRIPT LANGUAGE=JScript RUNAT=SERVER>
function MaFonction ()
 {
  tâches de la procédure
 }
</SCRIPT>

- En JavaScript

<SCRIPT LANGUAGE=JavaScript RUNAT=SERVER>
function MaFonction ()
 {
  tâches de la procédure
 }
</SCRIPT>

L'attribut RUNAT=SERVER indique au serveur d'exécuter le script sur le serveur. Si vous ne spécifiez pas cet attribut, la procédure sera exécutée par le navigateur du visiteur. L'attribut LANGUAGE détermine le langage " SCRIPT " utilisé par la procédure ou par le BLOC du SCRIPT. Vous pouvez spécifier tout langage installé sur le serveur. Pour spécifier le VBScript, utiliser la valeur " VBScript " et pour spécifier le JScript, utiliser la valeur " JScript ". Si vous ne spécifiez pas le langage, le script sera interprété par le " premier langage script par défaut ".

Les commandes du BLOC doivent être une ou plusieurs procédures du langage spécifié. Par exemple, La commande suivante définit la procédure JScript MaFonction.

<HTML>
<SCRIPT LANGUAGE=JScript RUNAT=SERVER>

  function MaFonction ()
  {
    Response.Write("Vous appelez MaFonction().")
  }
  
</SCRIPT>

ATTENTION de ne pas ajouter de code qui ne fasse pas partie de la procédure car les procédures entre les balises " server-side " <SCRIPT> ne sont pas le langage par défaut et sont donc interprété dans l'ordre visuel sans connaître nécessairement les autres fonctions ou procédures. De plus vous ne pouvez pas inclure dans le BLOC des directives de sortie ASP <%= %>. Utiliser Response.Write pour envoyer le contenu au navigateur.

Appeler une procédure. Pour appeler une procédure, vous pouvez inclure le nom d'une procédure dans une commande. Si vous appelez une procédure JScript en VBScript, vous devez utiliser les parenthèses après le nom de la procédure. Si la procédure n'a aucun argument, utiliser des parenthèses vides. Si vous appelez une procédure VBScript ou JScript en JScript, utiliser toujours les parenthèses après le nom de la procédure. Pour le VBScript, vous pouvez aussi utiliser le mot réservé " CALL " pour appeler une procédure. Sinon, si la procédure que vous appeler demande des arguments, la liste des arguments doit être entre parenthèses. Si vous oubliez le mot réservé " CALL ", vous devez aussi ne pas utiliser les parenthèses autour de la liste des arguments. Si vous utilisez la syntaxe CALL pour appeler une fonction ASP ou vos fonctions maison, la valeur retournée par la fonction sera abandonnée.

Deux exemples simples de fonction

Exemple 1 :

<%
Function calcul1(num_x,num_y)
  calcul1 =  num_x + num_y
End Function
%>

Appelle de la fonction
<% Response.Write 5 + calcul1(1,2) %>

Exemple 2 :

<%
Function calcul2(num_x,num_y)
  Response.Write  num_x + num_y
End Function
%>

Appelle de la fonction
<%= calcul2(1,2) %>

L'exemple suivant illustre comment créer une procédure et comment l'appeler en utilisant deux langages " SCRIPT " différents, (VBScript et JScript). Il y a deux procédures, " AffDate " en JScript et " AffRequete " en VBScript. Le HTML, appelle en VBScript la procédure JScript AffDate puis la procédure VBScript AffRequete.

<%@ LANGUAGE=VBScript %>
<HTML> 
 <BODY>
  <!- Appelle la procédure JScript en VBScript-->
  <% call AffDate() %>
  <!-- Appelle la procédure VBScript procedure en VBScript -->
  <% AffRequete %> 
  <BR>
 </BODY>
</HTML>

<%Sub AffRequete %>
<!-- Note: ceci n'affichera rien tant que la page ne sera
        pas appelé avec une chaîne de requètes " query string "
        comme : test.asp?x=1%20have&y=a%20cunning&z=plan -->

<%
  Response.Write "<TABLE BORDER=1>" & _
    "<TR><TH>Nom</TH><TH>Valeur</TH></TR>" 

  Set objQueryString = Request.QueryString 
  
  For Each strSelection In objQueryString
    Response.Write "<TR><TD>" & strSelection & "</TD><TD>" & _ 
    objQueryString(strSelection) & "</TD></TR>" 
  Next 

  Response.Write "</TABLE>" 

End Sub 
%>

<SCRIPT LANGUAGE=JScript RUNAT=SERVER> 

function AffDate() 
{ 
  var x
 
  x = new Date() 

  Response.Write(x.toString()) 
  Response.Write("<BR>")
} 
</SCRIPT>

Note : l'appelle d'une fonction JScript par le VBScript ne fait pas la différence entre les caractères minuscules et les caractères majuscules.

Passer un tableau " ARRAY " à une procédure.
Pour passer un tableau " ARRAY " à une procédure en VBScript, utiliser le nom du tableau suivi par des parenthèses vide. En JScript, utiliser des " barquettes vides ", " [ " et " ] "

Les fonctions " built-in " du ASP
Dans le menu de droit vous avez la description de plusieurs fonctions ASP. La description de chaque fonction utilise le même protocole.

Le nom de la fonction : Fonction - non_de_la_fonction()
Une courte description : Retourne telle ou telle valeur selon tel traitement etc.

La Syntaxe : fonction(paramètre1,paramètre2,[paramètre_optionnel]…) Noter que des paramètres peuvent être optionnels, ce qui veut dire que vous pouvez les identifier seulement si vous en avez besoin. Un paramètre optionnel est toujours indiqué par des " barquettes vides ", " [ " et " ] "

Un exemple en asp.
Et le résultat de l'exemple !

» Suite Début de la page


TrucswebTrucsweb


Fil d'info Trucsweb


 
sp

 
sp
 S U I T E   D U   S U J E T 
sp
Fonction - Array() : De la liste au tableau

Fonction - CInt() : Conversion en Interger

Fonction - CreateObject() : La force du ASP

Fonction - CStr() : Conversion en String

Heures et Dates : Manipuler l'heure et la date en ASP

Fonctions récursives : Optimiser vos calculs

Hébergement de qualité!

partenaire
Rechercher un tutoriel!
 
recherche avancée
Abonnez-vous!

 

Save the Net

 
sp
 C O M M A N D I T E S 
sp






 
sp
 T U T O R I E L S 
sp
· ASP / VBscript
· C/C++
· CSS
· DHTML
· CGI / Perl
· HTML
· Java/JSP
· Javascript
· PHP
· SSI
· WAP/WML
· XML/XSL
· Infographie
· Flash et Shockwave
· Audiovisuel
· Images gratuites
· Hébergement
· Analyses de logiciels
· Internet et Protocoles
· Veille intégrée
· Référencement
· Sécurité
· Outils gratuits
 
sp
 F O R U M S 
sp
· Forum Javascript
· Forum HTML/CSS
· Forum ASP/VBScript
· Forum Flash
· Tous les forums
 
sp
 S E R V I C E S 
sp
Generateur Trucsweb
· Générateur
· Répertoire
· Logithèque
· Glossaire
· Forum
· Nouveautés Dev Zone
· Ajouter un site
· Ajouter un logiciel
· Ajouter un tutoriel
· Fil d'info sur votre site
· Tester votre site
 
sp
 A P P L I C A T I O N S 
sp
· twCompteur 1.0 Nouveau
· twCalende 1.0 Nouveau
· twLiMenu 1.0 Nouveau
· twValide 2.2 sp
· twAliste 1.0 sp
· twASPDate 2.0 sp
· twASPLivre 1.0 sp
 
sp
 R É F É R E N C E S 
sp
· W3C HTML 4.0
· W3C XHTML 1.0
· Web Design Group
· W3C SMIL 2.0
· W3C XML 1.0
· XML Cover Pages
· W3C CSS LEVEL 2
· Netscape Javascript 1.5
· Netscape Javascript 1.4
· Netscape Javascript 1.3
· Netscape DHTML
· Gecko DOM ref.
· IE DHTML
· VBScript Language Ref.
· JScript Language Ref.
· ASP Object Quick Ref.
· ADO API Reference
· Microsoft IIS5
· MSDN Library
· RFC Editor Site
· HTML 4.0 code de caractères
· Unicode fonts
· Manuel PHP
· Documentation Perl
· Perl 5 Reference Guide
· Flash actionscript FAST
· ActionScript dictionary
· MySQL Manual
· SQL Pro (F. Brouard)
· Java Language Spec.
· Java 2 SDK Doc. V1.3.1
· JavaServer Pages Ref.
· C/C++ Language Ref.
· Python Library Reference
· Les Navigateurs
· Terminologie d'Internet
· Traduction
· Traduction systran
· Traduction d'interface client
· Extensions de fichiers
· Virus Wildlist
· Virus Alerts
 
sp
 D O M A I N E S 
sp
iWeb

iWeb
 
sp
 C O P Y R I G H T  
sp

 

accueil | tutoriels | logithèque | répertoire | forum



© 1997-2006
Django (Oznog) Blais
Rivière-du-Loup, Québec
Ajouter à votre Sidebar  RSS 1.0
 
Conception Oznog co. Multimédia


Hit-Parade    Tout navigateurs   

8 visiteurs