"Winter is coming" (ma nouvelle page d'accueil)
Bonjour,
j'ai procédé comme vous l'avez expliqué VVA:
Mais, je ne récupère aucune valeur. Toujours la même page qui s'affiche: Impossible d'afficher la page...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 if request.form("slt_Fonction") <> 0 then 'objCmd.CommandText = "SELECT * FROM Personnel WHERE Fonction = '"&request.form("slt_Fonction")&" AND Nom LIKE '"&request.form("txt_Contact")&"%' ORDER BY Nom ASC" 'ajouté response.write("slt_Fonction") response.write("txt_Contact") 'fin ajout 'else 'objCmd.CommandText = "SELECT * FROM Personnel WHERE Nom LIKE '"&request.form("txt_Contact")&"%' ORDER BY Nom ASC" end if
dans l'appel de la page Contact_Search.asp
p.s je n'ai pas touché aux paramètres de connection ni de fermeture de la base de données.
Est-ce que le problème peut venir du serveur où est hebergé mon site web?
Réagis d'abord, réctifie après, mais ne reste pas les bras croisés à la recherche du parfait.
Merci de répondre
Et si tu fais une page avec justeQue se passe-t-il?
Code : Sélectionner tout - Visualiser dans une fenêtre à part <%response.write("Hello world!")%>
"Winter is coming" (ma nouvelle page d'accueil)
y a t il bien ceci en haut de ta page asp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part <%@ Language=VBScript %>
oui immobilis la page Hello Word fonctionne.
Oui VVA l'indication de VBscript exciste.
Merci à vous deux de votre aide
Réagis d'abord, réctifie après, mais ne reste pas les bras croisés à la recherche du parfait.
ok si la balise existe et si hello world fonctionne qu'elle est alors la première ligne de script de ta page car c'est là que cela plante
Tu peux poster le code complet des pages en question?
A+
"Winter is coming" (ma nouvelle page d'accueil)
voici le code des deux fichiers. Pour la base je n'arrive pas à la joindre, on me dit fichier non valide
c'est une base de données access: Personnels.mdb
Contenant une seule table: Personnel
dont les champs sont:
n (automatique) clé de la table.
Nom (texte)
Prenom (texte)
Fonction (texte)
Boitevocale (texte)
courriel (texte)
Contact_form.asp
Contact_Search.asp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <form name="SearchContact" method="post" action="Contact_Search.asp"> <input type="TEXT" name="txt_Contact"> <select name="slt_Fonction"> <option value="0"></option> <option value="1">Administration</option> <option value="2">Enseignant</option> <option value="3">Professionnels</option> <option value="4">Soutien</option> </select> <input type="submit" value="Chercher"> </form>
Je vous remercie de votre aide continue.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 <%@ Language=VBScript %> <% ' ------------------------ ' pavé d'ouverture de connexion et de création de l'objet recordset Set dbConnection = Server.CreateObject("ADODB.Connection") dbConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("ecole/Personnels.mdb")&"; Persist Security Info=False" ' ------------------------ set objRs = Server.CreateObject("ADODB.Recordset") set objCmd = Server.CreateObject("ADODB.Command") set objCmd.ActiveConnection = dbConnection ' ------------------------ ' requete if request.form("slt_Fonction") <> 0 then objCmd.CommandText = "SELECT * FROM Personnel WHERE Fonction = '"&request.form("slt_Fonction")&" AND Nom LIKE "&request.form("txt_Contact")&"%' ORDER BY Nom ASC" else objCmd.CommandText = "SELECT * FROM Personnel WHERE Nom LIKE '"&request.form("txt_Contact")&"%' ORDER BY Nom ASC" end if set objRs = objCmd.Execute ' ------------------------ ' affichage du resultat de la requete if (objRs.BOF And objRs.EOF) then response.write "Désolé, aucun contact ne correspond à votre recherche" else response.write"<table><tr><td>Nom</td><td>Prénom</td><td>Fonction</td><td>Boîte vocale</td><td>Mail</td></tr>" do while not objRs.EOF response.write"<tr><td>"&trim(objRs("Nom"))&"</td><td>"&trim(objRs("Prenom"))&"</td><td>"&trim(objRs("Fonction"))&"</td><td>"&trim(objRs("boitevocale"))&"</td><td>"&trim(objRs("courriel"))&"</td></tr>" objRs.MoveNext loop response.write "</table>" end if ' ------------------------ ' fermeture de la connexion objRs.Close set objRs = nothing set objCmd = nothing dbConnection.Close Set dbConnection = nothing %>
Réagis d'abord, réctifie après, mais ne reste pas les bras croisés à la recherche du parfait.
bonjour,
niveau code je ne vois pas de coquille par contre cette cette remarque résume bien la situation -> c'est là qu'il faut chercher du côté d'access
Pour la base je n'arrive pas à la joindre, on me dit fichier non valide
Bonjour,
Lorsque vous utilisez la syntaxe .. server.mappath("Personnels.mdb") ...
Il faut créer sous IIS manager votre site (faire un click droit -> propriétés -> création). La création de votre site permet l'accès de type http://localhost/personnel/ ....
Si le site n'est pas créé, server.mappath ne renvoit pas le repertoire en cours mais celui de system32.
J'espère vous avoir éclairé.
c'est ce que j'avais demandé de vérifier en tout début de réponse du post ? alors est-ce fait ?
Bonjour,
Oui VVA le site est créé.
J'ai installé le IIS pour faire des tests en local.
Lorsque je ne rentre rien comme Nom, le message ''désolé...'' fonctionne
Par contre lorsque je rentre un nom de personne après avoir choisi la fonction dans la liste déroulante, le même message apparaît.
Je vais faire en sorte que le tout fonctionne en local d'abord et ensuite je téléverse cela à distance.
Qu'en pensez-vous?
Réagis d'abord, réctifie après, mais ne reste pas les bras croisés à la recherche du parfait.
regarde ton SQL il y a une erreur de '
si ton champ est numérique il faut retirer la ' derriere le = sinon il faut en ajouter une après le &"
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE Fonction = '"&request.form("slt_Fonction")&"
essaye mais je crois que cela vient de là
Bonjour,
EN Local
en faisant ces changements en local, lorsque je ne selectionne rien dans la liste des fonctions (liste déroulante), on m'affiche la liste des noms, prénoms, fonction, boitevocales, couriels. ça fonctionne!
Par contre lorsque je tappe un nom dans la zone texte, ça ne fonctionne pas: page blanche avec impossible d'afficher la page.
À distance: rien ne fonctionne!
voici le code du fichier Contact_Search.asp
Voci un rappel de mes champs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 <%@ Language=VBScript %> <% ' ------------------------ ' pavé d'ouverture de connexion et de création de l'objet recordset Set dbConnection = Server.CreateObject("ADODB.Connection") dbConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("Personnels.mdb")&"; Persist Security Info=False" ' ------------------------ set objRs = Server.CreateObject("ADODB.Recordset") set objCmd = Server.CreateObject("ADODB.Command") set objCmd.ActiveConnection = dbConnection ' ------------------------ ' requete if request.form("slt_Fonction") <> 0 then objCmd.CommandText = "SELECT * FROM Personnel WHERE Fonction = '"&request.form("slt_Fonction")&"' AND Nom LIKE '"&request.form("txt_Contact")&"%' ORDER BY Nom ASC" else objCmd.CommandText = "SELECT * FROM Personnel WHERE Nom LIKE '"&request.form("txt_Contact")&"%' ORDER BY Nom ASC" end if set objRs = objCmd.Execute ' ------------------------ ' affichage du resultat de la requete if (objRs.BOF And objRs.EOF) then response.write "Désolé, aucun contact ne correspond à votre recherche" else response.write"<table><tr><td>Nom</td><td>Prénom</td><td>Fonction</td><td>Boîte vocale</td><td>Mail</td></tr>" do while not objRs.EOF response.write"<tr><td>"&trim(objRs("Nom"))&"</td><td>"&trim(objRs("Prenom"))&"</td><td>"&trim(objRs("Fonction"))&"</td><td>"&trim(objRs("boitevocale"))&"</td><td>"&trim(objRs("courriel"))&"</td></tr>" objRs.MoveNext loop response.write "</table>" end if ' ------------------------ ' fermeture de la connexion objRs.Close set objRs = nothing set objCmd = nothing dbConnection.Close Set dbConnection = nothing %>
Id: num automatique
Nom: texte
Prenom: texte
Fonction: texte
Boitevocale: Texte
Courriel: Texte.
Merci de votre aide.
Réagis d'abord, réctifie après, mais ne reste pas les bras croisés à la recherche du parfait.
Salut,
Tu peux déjà essayer de préserver les types lors des comparaisons. "Request" renvoi systématiquement des chaines. Donc,devrait être remplacé par
Code : Sélectionner tout - Visualiser dans une fenêtre à part request.form("slt_Fonction") <> 0ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part request.form("slt_Fonction") <> "0"ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part strcomp(request.form("slt_Fonction"), "0") <> 0A+
Code : Sélectionner tout - Visualiser dans une fenêtre à part clng(request.form("slt_Fonction")) <> 0
"Winter is coming" (ma nouvelle page d'accueil)
Bonjour,
J'ai opté pour un formulaire plus simple: j'ai enlevé la liste déroulante pour le choix de la fonction.
Fichier Contact_form.asp
Fichier: Contact_search.asp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Saisissez le nom du personnel recherché ou uniquement le début de son nom de famille et appuyez ensuite sur Chercher. <form name="SearchContact" method="post" action="Contact_Search.asp"> <input type="TEXT" name="txt_Contact"> <input type="submit" value="Chercher"> </form>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 <%@ Language=VBScript %> <% ' ------------------------ ' pavé d'ouverture de connexion et de création de l'objet recordset Set dbConnection = Server.CreateObject("ADODB.Connection") dbConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("Personnels.mdb")&"; Persist Security Info=False" ' ------------------------ set objRs = Server.CreateObject("ADODB.Recordset") set objCmd = Server.CreateObject("ADODB.Command") set objCmd.ActiveConnection = dbConnection if request.form("txt_Contact")<> "0" then objCmd.CommandText = "SELECT * FROM Personnel WHERE Nom LIKE '"&request.form("txt_Contact")&"%' ORDER BY Nom ASC" end if set objRs = objCmd.Execute ' ------------------------ ' affichage du resultat de la requete if (objRs.BOF And objRs.EOF) then response.write "Désolé, aucun contact ne correspond à votre recherche" else response.write"<table border=2><tr><td>Nom</td><td>Prénom</td><td>Fonction</td><td>Boîte vocale</td><td>Mail</td></tr>" do while not objRs.EOF response.write"<tr><td>"&trim(objRs("Nom"))&"</td><td>"&trim(objRs("Prenom"))&"</td><td>"&trim(objRs("Fonction"))&"</td><td>"&trim(objRs("boitevocale"))&"</td><td>"&trim(objRs("courriel"))&"</td></tr>" objRs.MoveNext loop response.write "</table>" end if ' ------------------------ ' fermeture de la connexion objRs.Close set objRs = nothing set objCmd = nothing dbConnection.Close Set dbConnection = nothing %>
Tout fonctionne bien, même à distance.
Je vous remercie tous de votre disponibilité à m'aider.
Réagis d'abord, réctifie après, mais ne reste pas les bras croisés à la recherche du parfait.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager