Bonjour,
A priori mon probleme est simple.
Je voudrais vérifier si un élément de ma base de données éxiste, pour savoir si je dois l’afficher ou non
Mais apparement je rentre toujours dans le “else”
Voici le bout de code concerné :
var_test=liste_etab("Web")
If var_test = "" Then
var_web=""
Else
var_web="<br><i>Site web :</i> <a href=" & liste_etab("Web") & " " & "target=_blank" & ">" & liste_etab("Web") & "</a>"
End If
J’ai aussi testé :
var_test=liste_etab("Web")
If var_test is Nothing Then
var_web=""
Else
var_web="<br><i>Site web :</i> <a href=" & liste_etab("Web") & " " & "target=_blank" & ">" & liste_etab("Web") & "</a>"
End If
Erreur obtenue:
Erreur d’exécution Microsoft VBScript erreur ‘800a01a8’
Objet requis
As-tu essayé d’afficher ta variable var_test afin de connaitre son contenu ? ça te permettra de voir ce que te renvoie réellement la fonction liste_etab().
Oui var_test me renvoi une chaîne de caractère lorsque le champs “Web” est bien renseigné.
Mais visiblement je rentre dans le “else” meme lorsque le champs “Web” (et donc var-test) sont vides
Edité le 12/02/2008 à 16:25
Vu que je n’ai pas reussit à le faire marcher, j’ai opté pour une solution alternative (un peu moche mais bon)
var_test=liste_etab("Web")
llong=len(var_test)
If llong < 1 Then
var_site=""
End If
If llong > 1 Then
var_site="<br><i>Site web :</i> <a href=" & liste_etab("Web") & " " & "target=_blank" & ">" & liste_etab("Web") & "</a>"
End If
Ca marche bien comme ca, ce qui me laisse penser que mon if … else … end if ne marchait pas
var_test=liste_etab("Web")
If StrComp(var_test, vbNullString, CompareMethod.Text) = 0 Then
var_web= vbNullString
Else
var_web="<br><i>Site web :</i> <a href=" & liste_etab("Web") & " " & "target=_blank" & ">" & liste_etab("Web") & "</a>"
End If
edit : lol jm, on a eu la même idée :-p
En effet, StrComp est de loin la méthode à utiliser lorsqu’il s’agit de comparer des chaines de caractère, elle est 20x plus rapide, tout simplement.
Edité le 12/02/2008 à 19:09