Dypso Backoffice
Dypso Backoffice


Techniques

Cette section permet de regrouper un ensemble de techniques ou de scripts qui ont l'originalité d'arriver à résoudre une difficulté avec le moindre effort ou qui sont particulièrement efficaces...


Techniques / Envoyer un tableau par url

Parfois au sein d'une application internet (site Web ou intranet), nous pouvons être amené à envoyer des informations plus ou moins complexes d'une page à une autre. Par exemple, il peut être intéressant de partager d'une page à l'autre une structure de type tableau. Plusieurs techniques permettent de réaliser cette opération. La première d'entre elles est de stocker le tableau que l'on désire envoyé d'une page à l'autre dans une variable de session comme dans l'exemple suivant :

<%
Dim tab(3)
tab(0) = "premier_element"
tab(1) = "deuxieme_element"
tab(2) = "troisieme_element"
	
Session("tableau") = tab
	
' Afin de récupéré le tableau dans une 
' autre page il suffira de récupéré
' le tableau dans une variable
' Dim tabrecu
' tabrecu = Session(tab)
' ' Afficher la taille du tableau reçu
' Response.write Ubound(tabrecu)
%>

Une autre solution moins connu et qui peut se révéler d'autant plus efficace que l'ensemble de ses valeurs peut être généré sur le poste client avec du code javascript est de passer l'ensemble des valeurs du tableau via l'url. Il suffit en effet de suivre le même schéma d'envoi de données que celui d'un formulaire lorsqu'il s'agit de groupe de contrôles de formulaire comme les champs "INPUT" de type "CHECKBOX" par exemple... C'est à dire que dans ce cas là la même variable est posté avec des valeurs différentes. Si le formulaire est posté avec la méthode "GET", vous pouvez observez que les valeurs sont reçues dans la page de destination sous cette forme : "chp=valeur1&chp=valeur2&chp=valeur3". Pour effectuer un envoi de valeur, il nous suffit donc de calquer le même principe :

<script>
//ouverture d'une pop up où l'on envoi un tableau 
//jour contenant les jours de la semaine
window.open('affichage_jour.asp?jour=lundi&jour=mardi&'+
'jour=mercredi&jour=jeudi&'+
'jour=vendredi&jour=samedi&jour=dimanche');
</script>
	
	
	'Sur la page affichage_jour.asp
	'les valeur sont reçues dans la collection querystring
	' de l'objet request :
Dim jour
jour = request.queryString("jour")
	
	' Si l'on écrit le contenu de la variable jour
	' on s'apercoit qu'elle contient la liste des jours
	' séparés par une virgule, mais on peut obtenir
	' un tableau en faisant un split :
tab_jour = Split(jour,",")
	
	

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'dypso'@'172.20.245.55' (using password: YES) in /mnt/110/sdb/3/1/dypso/include/tools.php on line 106
Impossible de se connecter : Access denied for user 'dypso'@'172.20.245.55' (using password: YES)