Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2011, 20h54   #1
Membre à l'essai
 
Inscription : novembre 2008
Messages : 47
Détails du profil
Informations forums :
Inscription : novembre 2008
Messages : 47
Points : 21
Points : 21
Par défaut Problème avec un champ de type texte

Bonjour à tous

J'ai un petit soucie

Sgbd: Microsoft SQL

Je dois afficher du texte dans une fenêtre de type <textarea> d'une page asp.

Le texte est enregistré dans une table avec un champ nommé TexteDescription de type varchar(2000)et l'affichage se déroule sans problème.

Mais si je change la propriété du champ TexteDescription pour le type Text, plus rien ne s'affiche.

Je rechange pour varchar(2000) tout fonctionne.

Code :
1
2
3
4
5
<td width="80%" > 
<textarea rows="5" id="Description" name="Description" cols="48" > 
<%response.write(Pub.Description)%> 
</textarea> 
</td>
Merci pour vos commentaires et suggestions.
allexpert est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 00h40   #2
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Salut,

Visiblement tu utilises les class, et c'est plutôt ce code la qu'il nous faudrait parce que la on ne voit pas vraiment ce qui se passe
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 13h56   #3
Membre à l'essai
 
Inscription : novembre 2008
Messages : 47
Détails du profil
Informations forums :
Inscription : novembre 2008
Messages : 47
Points : 21
Points : 21
Merci de répondre

Je prépare les informations pertinentes et les afficherais dans la discussion.
allexpert est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 21h21   #4
Membre à l'essai
 
Inscription : novembre 2008
Messages : 47
Détails du profil
Informations forums :
Inscription : novembre 2008
Messages : 47
Points : 21
Points : 21
Bonjour Kaiser59

Voici le code ulilisé pour récupérer le texte.

J'ai fait certains teste avant de le mètre en ligne


Le concept :

1- La class ModifierAnnonce est instancier en premier.
2- Cette class utilise la class GetAnnoncePublie qui elle récupère les propriétés d'une annonce
avec la méthode GetProp.
3- La méthode GetProp instancie la class SGDBConnection qui elle crée la connexion à la base de
donnée et soumet les requêtes avec la méthode Requete.
4- Dans la base de donnée le champ TexteDescription est de type text

Teste effectuer

Dans la section "select case Annonce.Erreur " j'ai mis des lignes pour afficher les résultats obtenus

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
select case Annonce.Erreur
 
	case 0
 
		response.write("NumeroAnnonce" & Annonce.Prop.Rs("NumeroAnnonce") &"<br>")			
 
		response.write("NBR_Caractere ="& Annonce.Prop.Rs("NBR_Caractere") & "<br>")
 
		response.write("TexteDescription ="& Annonce.Prop.RS("TexteDescription")&"<br>")
 
		Response.write("Requete executé avec succes" & "<BR>")
 
		response.write("La description donnée est : " & Err.Description & "<BR>")
	case 1
			response.write(Annonce.Message &"<br>")
			ValidationErreur=1
	case 2
			response.write(Annonce.Message &"<br>")
			ValidationErreur=1
End select
Reluslat à l'écrant:

NumeroAnnonce =1240
NBR_Caractere =1000
TexteDescription =
Requete executé avec succes
La description donnée est :

Le contenu du champ TexteDescription ne s'affiche pas

Par contre, si je change l'ordre d'affichage en commençant par TexteDescription


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
select case Annonce.Erreur
 
	case 0
 
		response.write("TexteDescription ="& Annonce.Prop.RS("TexteDescription")&"<br>")
 
		response.write("NumeroAnnonce" & Annonce.Prop.Rs("NumeroAnnonce") &"<br>")			
 
		response.write("NBR_Caractere ="& Annonce.Prop.Rs("NBR_Caractere") & "<br>")
 
		Response.write("Requete executé avec succes" & "<BR>")
 
		response.write("La description donnée est : " & Err.Description & "<BR>")
	case 1
			response.write(Annonce.Message &"<br>")
			ValidationErreur=1
	case 2
			response.write(Annonce.Message &"<br>")
			ValidationErreur=1
End select
Reluslat à l'écrant:

TexteDescription =XXXXX
NumeroAnnonce1240
NBR_Caractere =1000
Requete executé avec succes
La description donnée est :

le champ TexteDescription s'affiche normalement!!!


Code :
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
 
 
set Pub = new ModifierAnnonce
 
Class ModifierAnnonce
 
	Public Annonce
	public ValidationErreur
 
 
 
Private Sub Class_Initialize()
 
IF NOT IsEmpty(session("ID_Client")) then
 
	set Annonce = new GetAnnoncePublie
 
 
	If IsEmpty(Session("FirstLoad")) then 'Pour éviter des acces inutile a la  BD
 
 
		session("NumeroAnnonce")=Request.form("NumeroAnnonce")
 
		Annonce.GetProp session("NumeroAnnonce"), Session("ID_Client")	
 
		select case Annonce.Erreur
 
			case 0
 
				response.write("NumeroAnnonce =" & Annonce.Prop.Rs("NumeroAnnonce") &"<br>")			
 
				response.write("NBR_Caractere ="& Annonce.Prop.Rs("NBR_Caractere") & "<br>")
 
				response.write("TexteDescription ="& Annonce.Prop.RS("TexteDescription")&"<br>")
 
				Response.write("Requete executé avec succes" & "<BR>")
 
				response.write("La description donnée est : " & Err.Description & "<BR>")
				case 1
					response.write(Annonce.Message &"<br>")
					ValidationErreur=1
				case 2
					response.write(Annonce.Message &"<br>")
					ValidationErreur=1
		End select
 
 
 
 
	End If
 
Else
	ValidationErreur = 1	
END IF
 
End Sub
 
Private Sub Class_Terminate()
 
 Set String1 = Nothing
 set Annonce=Nothing
 
End Sub
 
End class
 
'888888888888888888888888888888888888888888888888888888888888888888888888888888
 
 
Class GetAnnoncePublie 'RETOURNE UN ANNONCE EN PARTICULIER
 
	Public Prop	'Annoce
	Public NumeroAnnonce
	Public Erreur
	Public Message
	Private StrSQL
 
	private Sub Class_Initialize()
 
		set Prop= new SGDBConnection
		NumeroAnnonce=0
		Erreur=0
		Message=""
		StrSQL=""
 
 
	End Sub
 
	Public Sub GetProp(NumeroAnnonce,ID_Client)
 
		If IsNumeric(NumeroAnnonce) then
 
			StrSQL = "exec SP_GetAnnoncePropriete"&_
				" '" &	session("ID_Client") &"'"&_
				","	&	NumeroAnnonce
 
				'response.write(StrSQL & "<br>")
			Prop.Requete(StrSQL)
 
			If not Prop.RS.EOF then
 
				If Prop.Rs("Erreur")=1 then
					Erreur=1
					Message="Le numéro d'annonce n'existe pas pour le numéro de client"
				End If
 
			Else
				Erreur=1
				Message="Aucune enregistrement retourné du 	SGBD"
 
 
			End If
 
 
 
		else
			Erreur=1
			Message="Numéro d'annonce non numérique"
		End If
 
	End Sub
 
	private Sub Class_Terminate()
 
		Set Prop = Nothing
 
	End Sub
 
End Class
Tous commentaires ou suggestions seront appréciées.
allexpert est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 13h58   #5
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Que donne
Code :
 Annonce.Prop.RS("TexteDescription")
si tu laisses toujours en 1ère position mais que tu mettes ceci : j'ai mis 3 au hasard, mais c'est censé représenter le numéro de la colonne où se trouve textdescription


De plus, la tournure de cette condition me parait étonnante...
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
			If not Prop.RS.EOF then
			'Si au moins 1 enregistrement existe...
 
				If Prop.Rs("Erreur")=1 then 'pourquoi un champ "erreur" existe dans la table ? si la comparaison retourne rien c'est que l'annonce n'existe pas et on passe directement au sinon du if précédent...
					Erreur=1
					Message="Le numéro d'annonce n'existe pas pour le numéro de client"
 
				End If
 
 
			Else
				Erreur=1
				Message="Aucune enregistrement retourné du 	SGBD"
'n'y aurait il pas une contradiction avec l'autre condition ?
 
 
			End If
	else
			Erreur=1
			Message="Numéro d'annonce non numérique"
		End If
Ensuite dans
Code asp :
 select case Annonce.Erreur
1 et 2 peuvent être ensemble ou alors ne retourné que "1", pourquoi avoir mis "2" si "1" indique la même chose ?

En gros tu as soit :
Code asp :
1
2
3
case 1, 2
 response.write Annonce.Message &"<br />"&vbcrlf
			ValidationErreur=1

soit,
Code asp :
1
2
3
4
case 1
 response.write Annonce.Message &"<br />"&vbcrlf
			ValidationErreur=1
End select

Les parenthèses sont inutiles () pour le
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 14h07   #6
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 546
Points : 1 546
Citation:
Les parenthèses sont inutiles () pour le response.write
Je ne vois pas non plus l'utilité de rajouter dans le response.write
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 14h14   #7
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Citation:
Envoyé par roro06 Voir le message
Je ne vois pas non plus l'utilité de rajouter dans le response.write
C'est pour rendre plus lisible le code roro lorsque tu veux voir le code source depuis le navigateur
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 15h56   #8
Membre à l'essai
 
Inscription : novembre 2008
Messages : 47
Détails du profil
Informations forums :
Inscription : novembre 2008
Messages : 47
Points : 21
Points : 21
Bonjour à tous

J'ai retiré les parenthèses inutiles merci pour l'info ça va me faire moins de caractère à taper .
Le champ de type text est au vingtième rangs.
Code :
response.write "TexteDescription ="& Annonce.Prop.RS(20)&"<br>" & vbcrlf
En première position tous s'affiche bien.

TexteDescription =XXXXX
NumeroAnnonce =1246
NBR_Caractere =600
Requete executé avec succes
La description donnée est :

En deuxième position tous s'affiche bien.

NumeroAnnonce =1246
TexteDescription =XXXXX
NBR_Caractere =600
Requete executé avec succes
La description donnée est :

Par contre, en troisième position Plus rien??

NumeroAnnonce =1246
NBR_Caractere =600
TexteDescription =
Requete executé avec succes
La description donnée est :

À cette étape j'ai changé la valeur du rang pour le dix-neuvième.

NumeroAnnonce =1246
NBR_Caractere =600
TexteDescription =888
Requete executé avec succes
La description donnée est :

J'ai fait une boucle pour afficher le contenu de chaque champ.

Tous les champs ont une valeur par défault.

Code :
1
2
3
4
5
For I = 0 to 33 
 
response.write "Rang"&I&" = " & Annonce.Prop.RS(I)&"<br>"& vbcrlf 
 
Next
Rang1 = 32
Rang2 = {5C27ECD5-6E0A-4445-960E-B77521AE5688}
Rang3 = 0
Rang4 = 1246
Rang5 = 100
Rang6 = 180
Rang7 = 5/10/2011 3:41:00 PM
Rang8 = 5/14/2011 3:41:00 PM
Rang9 = 11/6/2011 3:41:00 PM
Rang10 = 115
Rang11 = Sport Loisirs
Rang12 = 115111
Rang13 = Balle/Ballon/Raquette
Rang14 = 2
Rang15 = 2
Rang16 = 2
Rang17 = Paolo Noel Wiki
Rang18 = 1
Rang19 = 888
Rang20 =
Rang21 =
Rang22 =
Rang23 = 600
Rang24 = False
Rang25 = 1
Rang26 = 0
Rang27 = False
Rang28 = 0
Rang29 = False
Rang30 = VIDE
Rang31 = False
Rang32 = False
Rang33 = 0

Les rangs manquand sont #20 Type Text #21 Type varchar(200) #22 Type int

BN: Si je change le type Text pour Varchar(5000) tous fonctionnes bien .

Tous commentaires ou suggestions seront appréciées.
allexpert est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h59.


 
 
 
 
Partenaires

Hébergement Web