20 éléments ASP dont les débutants devraient se souvenir
1. Comment utiliser ASP pour déterminer le chemin physique virtuel de votre site Web
Réponse : utilisez la méthode Mappath
< p align=center >< font size=4 face=Arial >< b >
Le chemin physique vers ce site Web virtuel est :
< /b >< /font >
< couleur de police=#FF0000 taille=6 face=Arial >
< %= Serveur.MapPath(/)% >
< /font >< /p >
2. Comment puis-je connaître le navigateur utilisé par l'utilisateur ?
Réponse : utilisez la méthode objet Request
strBrowser=Request.ServerVariables(HTTP_USER_AGENT)
Si Instr(strBrowser,MSIE) < > 0 Alors
Réponse.redirect (ForMSIEOnly.htm)
Autre
Réponse.redirect(ForAll.htm)
Fin si
3. Comment calculer le nombre moyen de visiteurs réguliers par jour
Réponse : Solution
< % startdate=DateDiff(d,Maintenant,01/01/1990)
si strdate< 0 alors startdate=startdate*-1
avgvpd=Int((usercnt)/startdate) % >
Afficher les résultats
< % réponse.write(avgvpd) % >
ça y est.cette page est consultée depuis le 10 novembre 1998
4. Comment afficher des images aléatoires
< % dim p, ppic, dpic
ppic=12
randomiser
p=Int((ppic*rnd)+1)
dpic=graphix/randompics/&p&.gif
%>
montrer
< img src=< %=dpic% > >
5.Comment revenir à la page précédente
Réponse : < a href=< %=request.serverVariables(Http_REFERER)% > >page précédente< /a >
Ou utilisez une image telle que : < img src=arrowback.gif target='_blank'> Si le serveur est en cours d'exécution, si une boîte de dialogue peut être affichée sur le serveur, alors vous devez attendre que quelqu'un clique sur OK avant que votre programme puisse continuez à s'exécuter. Généralement, le serveur ne sera pas gardé, Microsoft doit donc interdire cette fonction et vous dire au hasard (:) haha) que vous n'avez aucune autorisation. Cependant, la combinaison d'ASP et de script client peut afficher une boîte de dialogue comme suit :
< % yourVar=Test Dialog % >
< % langage de script='javascript' >
alerte(< %=votrevar% >)
</script>
11. Existe-t-il un moyen de protéger votre code source contre la visibilité des autres ?
Réponse : Vous pouvez télécharger un encodeur de script Microsoft Windows, qui peut chiffrer les scripts asp et les scripts javascript/vbscript côté client. . . Cependant, une fois le client chiffré, seul ie5 peut l'exécuter. Une fois le script côté serveur chiffré, il ne peut être exécuté que si le moteur de script 5 est installé sur le serveur (installez simplement un ie5).
12.Comment puis-je transférer une chaîne de requête d’un fichier asp à un autre ?
Réponse : ajoutez la phrase suivante à l'ancien fichier : Response.Redirect(second.asp? & Request.ServerVariables(QUERY_STRING))
Le fichier 13.global.asa ne fonctionne toujours pas ?
Réponse : Global.asa n'est valide que si le répertoire Web est défini sur une application Web et que global.asa est valide dans le répertoire racine d'une application Web. IIS4 peut utiliser Internet Service Manager pour définir les paramètres de l'application. Comment puis-je faire en sorte que le fichier htm exécute le code de script comme un fichier asp ?
14. Comment puis-je faire en sorte que le fichier htm exécute du code de script comme le fichier asp ?
Réponse : Gestionnaire des services Internet -> sélectionnez le site Web par défaut -> bouton droit de la souris -> propriétés du menu -> répertoire personnel -> paramètres de l'application (paramètre de l'application) -> cliquez sur la configuration du bouton -> mappage d'application -> cliquez sur le bouton Ajouter -> exécutable Parcourir sélectionnez /WINNT YSTEM32/INETSRV/ASP.DLL EXTENSION, entrez les exclusions de la méthode htm, entrez PUT.DELETE et confirmez tout. Cependant, il convient de noter que le htm sera également traité par asp.dll et que l'efficacité sera réduite.
15.Comment enregistrer les composants
Réponse : Il existe deux méthodes.
La première méthode : enregistrer manuellement la DLL. Cette méthode a été utilisée de IIs 3.0 à IIs 4.0 et d'autres serveurs Web. Il vous faut l'exécuter à partir de la ligne de commande, entrer dans le répertoire contenant la DLL et saisir : regsvr32 nom_composant.dll, par exemple, c:/temp egsvr32 AspEmail.dll Il enregistrera les informations spécifiques de la dll dans le registre. sur le serveur. Le composant peut ensuite être utilisé sur le serveur, mais cette approche présente un défaut. Une fois le composant enregistré à l'aide de cette méthode, le composant doit définir le compte anonyme NT en conséquence pour avoir l'autorisation d'exécuter la DLL. En particulier, certains composants doivent lire le registre, cette méthode d'enregistrement des composants n'est utilisée que lorsqu'il n'y a pas de MTS sur le serveur. Pour désenregistrer la DLL, utilisez : regsvr32 /u aspobject.dll exemple c:/temp egsvr32 / uaneiodbc. .dll
Deuxième méthode : Utiliser MTS (Microsoft Transaction Server) MTS est une nouvelle fonctionnalité d'IIS 4, mais elle apporte d'énormes améliorations. MTS vous permet de spécifier que seuls les utilisateurs privilégiés peuvent accéder aux composants, améliorant ainsi considérablement les paramètres de sécurité sur le serveur du site Web. Les étapes pour enregistrer un composant sur MTS sont les suivantes :
1) Ouvrez la console de gestion IIS.
2) Développez le serveur de transactions, cliquez avec le bouton droit sur les packages installés et sélectionnez un nouveau package.
3) Cliquez sur créer un package vide.
4) Nommez le package.
5) Spécifiez le compte administrateur ou utilisez interactif (si le serveur est souvent connecté en utilisant l'administrateur).
6) Maintenant, faites un clic droit sur les composants développés sous le package que vous venez de créer. Sélectionnez un nouveau puis un composant.
7) Sélectionnez installer un nouveau composant [b].
8) Recherchez votre fichier .dll et sélectionnez suivant pour terminer.
Pour supprimer cet objet, sélectionnez simplement son icône puis sélectionnez Supprimer.
Remarque : Portez une attention particulière à la deuxième méthode, c'est le meilleur moyen de déboguer les composants que vous écrivez sans avoir à redémarrer la machine à chaque fois.
16. Connexion aux bases de données ASP et Access :
17. Connexion aux bases de données ASP et SQL :
Créez un objet jeu d'enregistrements :
définir rs=server.createobject(adodb.recordset)
Instruction SQL rs.open, conn, 3,2
18. Comment utiliser les commandes SQL courantes :
(1) Vérification des enregistrements de données :
sql=select * à partir de la table de données où nom du champ = valeur du champ, trié par nom de champ [desc]
sql=select * à partir de la table de données où le nom du champ ressemble à '%field value%', trié par nom de champ [desc]
sql=sélectionner les 10 premiers * de la table de données où le nom du champ est classé par nom de champ [desc]
sql=select * à partir de la table de données où le nom du champ est dans ('valeur 1', 'valeur 2', 'valeur 3')
sql=select * à partir de la table de données où le nom du champ est compris entre la valeur 1 et la valeur 2
(2) Mettre à jour les enregistrements de données :
sql=mettre à jour la table de données définie le nom du champ=valeur du champ où l'expression conditionnelle
sql=mettre à jour la table de données, champ 1=valeur 1, champ 2=valeur 2...champ n=valeur n où expression conditionnelle
(3) Supprimer les enregistrements de données :
sql=supprimer de la table de données où l'expression conditionnelle
sql=supprimer de la table de données (supprimer tous les enregistrements de la table de données)
(4) Ajouter un enregistrement de données :
sql=insérer dans la table de données (champ 1, champ 2, champ 3...) valeurs (valeur 1, valeur 2, valeur 3...)
sql=insérer dans la table de données cible sélectionner * dans la table de données source (ajouter des enregistrements de la table de données source à la table de données cible)
(5) Fonction statistique d'enregistrement des données :
AVG (nom du champ) dérive une moyenne de colonne de tableau
COUNT(*|nom du champ) compte le nombre de lignes de données ou compte le nombre de lignes de données avec une valeur dans une certaine colonne
MAX (nom du champ) obtient la valeur maximale d'une colonne de table
MIN (nom du champ) obtient la valeur minimale d'une colonne de table
SUM (nom du champ) ajoute les valeurs des colonnes de données
Comment référencer la fonction ci-dessus :
sql=select sum(field name) comme alias de la table de données où l'expression conditionnelle
définir rs=conn.excute(sql)
Utilisez rs (alias) pour obtenir des valeurs statistiques et utilisez les mêmes méthodes que ci-dessus pour les autres fonctions.
(5) Création et suppression de tableaux de données :
Nom de la table de données CREATE TABLE (champ 1 type 1 (longueur), champ 2 type 2 (longueur)...)
Exemple : CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE nom de la table de données (supprimer définitivement une table de données)
19. Méthodes de l'objet recordset :
rs.movenext déplace le pointeur d'enregistrement vers le bas d'une ligne à partir de la position actuelle
rs.moveprevious déplace le pointeur d'enregistrement vers le haut d'une ligne à partir de la position actuelle
rs.movefirst déplace le pointeur d'enregistrement vers la première ligne de la table de données
rs.movelast déplace le pointeur d'enregistrement vers la dernière ligne de la table de données
rs.absoluteposition=N déplace le pointeur d'enregistrement vers la ligne N de la table de données
rs.absolutepage=N déplace le pointeur d'enregistrement vers la première ligne de la page N
rs.pagesize=N définit chaque page sur N enregistrements
rs.pagecount renvoie le nombre total de pages en fonction des paramètres de taille de page
rs.recordcount renvoie le nombre total d'enregistrements
rs.bof renvoie si le pointeur d'enregistrement dépasse le début de la table de données, vrai signifie oui, faux signifie non
rs.eof renvoie si le pointeur d'enregistrement dépasse la fin de la table de données, vrai signifie oui, faux signifie non
rs.delete supprime l'enregistrement actuel, mais le pointeur d'enregistrement ne se déplace pas vers le bas
rs.addnew ajoute des enregistrements à la fin de la table de données
rs.update met à jour les enregistrements de la table de données
-------------------------------------------------- -------
20 méthodes d'objet Recordset
Méthode ouverte
recordset.Open Source, ActiveConnection, CursorType, LockType, Options
Source
L'objet Recordset peut être connecté à l'objet Command via la propriété Source. Le paramètre Source peut être un nom d'objet Command, une commande SQL, un nom de table de données spécifié ou une procédure stockée. Si ce paramètre est omis, le système utilise la propriété Source de l'objet Recordset.
ConnexionActive
Les objets Recordset peuvent se connecter aux objets Connection via la propriété ActiveConnection. L'ActiveConnection ici peut être un objet Connection ou une chaîne de paramètres de chaîne contenant des informations de connexion à la base de données (ConnectionString).
Type de curseur
Le paramètre CursorType de la méthode Open de l'objet Recordset indique le type de curseur avec lequel les données seront démarrées, notamment adOpenForwardOnly, adOpenKeyset, adOpenDynamic et adOpenStatic, comme décrit ci-dessous :
-------------------------------------------------- ----------
Description de la valeur constante constante
-------------------------------------------------- ----------
adOpenForwardOnly 0 Valeur par défaut, démarre un curseur qui peut uniquement avancer (avant uniquement).
adOpenKeyset 1 démarre un curseur de type Keyset.
adOpenDynamic 2 démarre un curseur de type dynamique.
adOpenStatic 3 démarre un curseur de type statique.
-------------------------------------------------- ----------
Les types de curseur ci-dessus affecteront directement toutes les propriétés et méthodes de l'objet Recordset. La liste suivante illustre les différences entre eux.
-------------------------------------------------- ----------
Propriétés du jeu d'enregistrements adOpenForwardOnly adOpenKeyset adOpenDynamic adOpenStatic
-------------------------------------------------- ----------
AbsolutePage ne prend pas en charge la lecture et l'écriture.
AbsolutePosition n'est pas pris en charge. Non pris en charge. Lisible et inscriptible.
ActiveConnection lecture-écriture lecture-écriture lecture-écriture lecture-écriture
BOF lecture seule lecture seule lecture seule lecture seule
Le signet n'est pas pris en charge. Il peut être lu et écrit.
CacheSize Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
CursorLocation Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
CursorType Lire et écrire Lire et écrire Lire et écrire Lire et écrire
EditMode lecture seule lecture seule lecture seule lecture seule
EOF lecture seule lecture seule lecture seule lecture seule
Filtre Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
LockType Lire et écrire Lire et écrire Lire et écrire Lire et écrire
MarshalOptions Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
MaxRecords Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
PageCount n'est pas pris en charge. La lecture seule n'est pas prise en charge.
PageSize Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
RecordCount ne prend pas en charge la lecture seule
Source Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible Lisible et inscriptible
Etat lecture seule lecture seule lecture seule lecture seule
Statut lecture seule lecture seule lecture seule lecture seule
AddNew Support Support Support Support
Support CancelBatch Support Support Support
AnnulationMise à jour assistance assistance assistance assistance
Le clonage n'est pas pris en charge.
Fermer le support, le support, le support, le support
Supprimer le support le support le support le support
GetRows prise en charge prise en charge prise en charge
Le déplacement n'est pas pris en charge, pris en charge, pris en charge.
Assistance Assistance Assistance Assistance Assistance Assistance
MoveLast non pris en charge pris en charge pris en charge pris en charge
Assistance MoveNext Assistance Assistance Assistance
DéplacerPrécédent Non pris en chargeSupportéSupporté
NextRecordset support support support support
Support ouvert Support Support Support
Demander la prise en charge prise en charge prise en charge
Resynchronisation Non pris en charge Non pris en charge Pris en charge Pris en charge
Prise en charge
Mise à jour Assistance Assistance Assistance Assistance
Prise en charge de UpdateBatch prise en charge prise en charge
-------------------------------------------------- ----------
La méthode NextRecordset ne s'applique pas aux bases de données Microsoft Access.
Type de verrouillage
Le paramètre LockType de la méthode Open de l'objet Recordset indique le type de Lock à utiliser. Si ce paramètre est ignoré, le système utilisera la propriété LockType de l'objet Recordset comme valeur par défaut. Les paramètres LockType incluent adLockReadOnly, adLockPrssimistic, adLockOptimistic et adLockBatchOptimistic, etc., qui sont décrits comme suit :
-------------------------------------------------- ----------
Description de la valeur constante constante
-------------------------------------------------- ----------
adLockReadOnly 1 Valeur par défaut, l'objet Recordset démarre en mode lecture seule, ne peut pas exécuter AddNew, Update, Delete et d'autres méthodes
adLockPrssimistic 2 Lorsque la source de données est mise à jour, le système verrouille temporairement les actions des autres utilisateurs pour maintenir la cohérence des données.
adLockOptimistic 3 Lorsque la source de données est en cours de mise à jour, le système ne verrouillera pas les actions des autres utilisateurs et ces derniers pourront ajouter, supprimer et modifier des données.
adLockBatchOptimistic 4 Lorsque la source de données est mise à jour, les autres utilisateurs doivent remplacer l'attribut CursorLocation par adUdeClientBatch pour ajouter, supprimer ou modifier des données.