Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : probleme d'affichage [ Web 2.0 / Compatibilité des navigateurs ] (mahaabdallah)

lundi 26 novembre 2007 à 09:44:06 | probleme d'affichage

mahaabdallah

Bonjour tout le monde,

J'utilise Visual Web Developer 2005 pour afficher une base de connaissance qui appartenait à un ancien serveur pour la faire migrée dans un nouveau serveur.

Pour l'affichage d'une arborescence, j'utilise ceci comme code:

<%@ Page Language="VB" %>
<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls" %>
<%@ Register TagPrefix="wmx" Namespace="Microsoft.Matrix.Framework.Web.UI" Assembly="Microsoft.Matrix.Framework, Version=0.6.0.0, Culture=neutral, PublicKeyToken=6f763c9966660626" %>
<%@ import Namespace="System" %>
<%@ import Namespace="System.Io" %>
<%@ import Namespace="System.Data.SQLClient" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Drawing" %>
<script runat="server">

    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' BASE DE CONNAISSANCES     Juin 2004                                           '
    ' Auteur : Vincent RICHARD                                                      '
    ' Nom du fichier : bdcArbre1.aspx                                               '
    ' Fonction : page de recherche de fiche par Mots-clef et/ou Auteur              '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
   
    ' s'execute à chaque chargement de page
    sub Page_Load(ByVal sender As System.object, ByVal e As System.EventArgs)
        ' Au 1er chargement de la page
        if not page.IsPostBack then
            Arbre1TextClefs.text = ""
            if Request.QueryString("From") = "local" then
                dim ID as string = Request.QueryString("ID")
                Arbre1TextClefs.Text = Request.QueryString("Champs")
                Selection.SelectedIndex = Request.QueryString("Check") - 1
                Affiche_Fiche_Sous_Rep(ID)
            end if
            ' au 1er chargement de la page
            ' remplissage du dropdownlist
            Remplir_Liste()
        else
            lancer_recherche()
            Erreur.Text = ""
        end if
    end sub
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' FONCTIONS DE TRAITEMENT SUR LA DROPDOWNLIST ET LE DATAGRID      '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Fonction permettant de remplir la Dropdownlist1
    Function Remplir_Liste()
            DropDownList1.DataSource = CreateDataSource()
            DropDownList1.DataTextField = "Auteur"
            DropDownList1.DataValueField = "Auteur"
            DropDownList1.DataBind()
            ' Ajoute le champs TOUS à la listeBox pour permettre d'afficher toutes les stations
            dim i1 as new listitem
            i1.value = "TOUS"
            i1.Text = "TOUS"
            i1.selected = true
            DropDownList1.items.add(i1)
    end Function
   
   
    ' Accès à la source de données pour le dropdownlist
    Function CreateDataSource() As ICollection
        Dim dt As New DataTable()
        dim ds as New DataSet()
        ds = MyQueryMethod_DropDownList()
        dt = ds.Tables.Item(0)
        Dim dv As New DataView(dt)
        Return dv
    End Function
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' FONCTIONS DE TRAITEMENTS SUR LA BASE DE DONNEES "CONNAISSANCES" '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Selectionne tous les auteurs de fiches de la table FICHES
    Function MyQueryMethod_DropDownList() As System.Data.DataSet
        Dim connectionString As String = "server='srvfivq'; trusted_connection=true; database='Connaissances'"
        Dim dbConnection As System.Data.IDbConnection = New System.Data.SqlClient.SqlConnection(connectionString)
   
        Dim queryString As String = "SELECT distinct [Fiches].[Auteur] FROM [Fiches] WHERE [Fiches].[Genre] = 2 order by [Auteur] ASC"
        Dim dbCommand As System.Data.IDbCommand = New System.Data.SqlClient.SqlCommand
        dbCommand.CommandText = queryString
        dbCommand.Connection = dbConnection
   
        Dim dataAdapter As System.Data.IDbDataAdapter = New System.Data.SqlClient.SqlDataAdapter
        dataAdapter.SelectCommand = dbCommand
        Dim dataSet As System.Data.DataSet = New System.Data.DataSet
        dataAdapter.Fill(dataSet)
   
        Return dataSet
    End Function
   
   
    ' selection de fiche
    Function MyQueryMethod(ByVal querystring As String) As System.Data.DataSet
        Dim connectionString As String = "server='srvfivq'; trusted_connection=true; database='Connaissances'"
        Dim dbConnection As System.Data.IDbConnection = New System.Data.SqlClient.SqlConnection(connectionString)
        Dim dbCommand As System.Data.IDbCommand = New System.Data.SqlClient.SqlCommand
        dbCommand.CommandText = queryString
        dbCommand.Connection = dbConnection
   
        Dim dataAdapter As System.Data.IDbDataAdapter = New System.Data.SqlClient.SqlDataAdapter
        dataAdapter.SelectCommand = dbCommand
        Dim dataSet As System.Data.DataSet = New System.Data.DataSet
        dataAdapter.Fill(dataSet)
        Return dataSet
    End Function
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' FONCTIONS DIVERSES SUR LE TRAITEMENTS DES FICHES                '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' cette fonction affiche toutes les fiches d'un répertoire
    Function Affiche_Fiche_Sous_Rep(ByVal ID as string)
        Dim ds As DataSet
        Dim pRow as DataRow
        Dim Compose_SQL, chaine as string
        Compose_SQL = "SELECT * FROM [Fiches] WHERE [Fiches].[ID_pere] = " + ID + ";"
        ds = MyQueryMethod(Compose_SQL)
        for each pRow In ds.Tables("Table").Rows
            chaine = pRow("ID")
            if pRow("Genre") = 1 then
                ' Ajouter les Url dans la page
                dim h2 as new Hyperlink()
                h2.text = pRow("Titre") & " (Répertoire)"
                h2.NavigateUrl = "bdcArbre1.aspx?From=local&ID=" + chaine + "&Champs=" + Arbre1TextClefs.Text + "&Check=" + selection.selectedValue
                h2.target = "sommaire_bdc"
                ' permet de choisir la taille de la police
                h2.font.size=FontUnit.XSmall
                Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                Arbre1Panel.controls.add(h2)
                ' Permet de passer à la ligne entre chaque ajout d'une Url
                Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
            else
                ' Ajouter les Url dans la page
                dim h1 as new Hyperlink()
                h1.text = pRow("Titre")
                h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + chaine
                h1.target = "principal_bdc"
                ' permet de choisir la taille de la police
                h1.font.size=FontUnit.XSmall
                Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                Arbre1Panel.controls.add(h1)
                ' Permet de passer à la ligne entre chaque ajout d'une Url
                Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
            end if
        next
    End Function
   
   
    ' fonction qui lance une recherche de fiche par mots-clefs
    Function lancer_recherche()
        ' récupération de la checkbox selectionnée
        if selection.items.item(0).selected then
            ' alors la case "Et" est sélectionnée
            Recherche_AND_Titre(Recherche_AND_Corps())
        else
            if selection.items.item(1).selected then
                ' alors la case "Ou" est sélectionnée
                Recherche_OR_Titre(Recherche_OR_Corps())
            else
                ' alors la case "Le Texte exacte" est sélectionnée
                Recherche_EXACTE_Titre(Recherche_EXACTE_Corps())
            end if
        end if
    End Function
   
   
    ' Cette fonction permet de tester la présence de la fiche dans le tableau
    Function Test_presence_ID(ByVal Tab1_ID as array , ByVal chaine as string) as boolean
        Dim ID as string
        for each ID In Tab1_ID
            if ID = chaine then
                return true
                exit for
            end if
        next
        return false
    end Function
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Fonction de traitement de la chaine SQL                       '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' permet d'éliminer les erreurs dus aux caractères tels que " ' "
    function Traitement_Chaine_SQL(ByVal chaine_SQL as string) as string
        dim result_split() as string
        dim size as integer
        dim i as integer
        dim result_chaine as string
   
        result_split = split(chaine_SQL,"'")
        size = result_split.getLength(0)
   
        result_chaine = result_split(0)
        if size <> 1 then
            for i=1 to size-1
                result_chaine = result_chaine + "''" + result_split(i)
            next
        end if
        return result_chaine
    end function
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' AND                                                                                   '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' fonction de recherche de fiche avec cas AND
    function Recherche_AND_Corps() as array
        Dim tab_mots() as string
        Dim ds As DataSet
        Dim pRow as DataRow
        dim ID, taille, i as integer
        dim chaine,chaine1, Compose_SQL as string
        dim auteur as string
        auteur = DropDownList1.selecteditem.Text
   
        try
            chaine = trim(Arbre1TextClefs.Text)
            chaine = Traitement_Chaine_SQL(chaine)
            ' récupére chaque mot séparé par un espace
            tab_mots = split(chaine," ")
            taille = tab_mots.length()
            ' compose la chaine SQL a transmettre
            Compose_SQL = "SELECT * FROM [Fiches] WHERE "
            for i=0 to Taille - 1
                if i = taille - 1 then
                    ' on arrive au dernier élement du tableau
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL + "([Fiches].[Corps] like '%" + tab_mots(i) + "%'"
                        if Auteur <> "TOUS" then
                            Compose_SQL = Compose_SQL + " AND [FICHES].[AUTEUR] = '" + auteur + "'"
                        end if
                        Compose_SQL = Compose_SQL + ")"
                    else
                        if Auteur = "TOUS" then
                            Compose_SQL = "SELECT * FROM [Fiches]"
                        else
                            Compose_SQL = Compose_SQL + "[FICHES].[AUTEUR] = '" + auteur + "'"
                        end if
                    end if
                else
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL + "([Fiches].[Corps] like '%" + tab_mots(i) + "%') AND "
                    end if
                end if
            next
   
            ' initialisation des variables
            i = 0
            Taille = 0
            ' recherche des fiches dans la base de données
            ds = MyQueryMethod(compose_SQL)
            taille = ds.Tables("Table").Rows.count
            dim tab_ID(taille-1) as string
            for each pRow In ds.Tables("Table").Rows
                tab_ID(i) = pRow("ID")
                if pROw("Genre") = 1 then
                    ' Ajouter les Url dans la page
                    dim h2 as new Hyperlink()
                    h2.text = pRow("Titre") & " (Répertoire)"
                    h2.NavigateUrl = "bdcArbre1.aspx?From=local&ID=" + tab_ID(i) + "&Champs=" + Arbre1TextClefs.Text + "&Check=" + selection.selectedValue
                    h2.target = "sommaire_bdc"
                    ' permet de choisir la taille de la police
                    h2.font.size=FontUnit.XSmall
                    Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                    Arbre1Panel.controls.add(h2)
                    ' Permet de passer à la ligne entre chaque ajout d'une Url
                    Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                else
                    ' Ajouter les Url dans la page
                    dim h1 as new Hyperlink()
                    h1.text = pRow("Titre")
                    h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + tab_ID(i)
                    h1.target = "principal_bdc"
                    ' permet de choisir la taille de la police
                    h1.font.size=FontUnit.XSmall
                    Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                    Arbre1Panel.controls.add(h1)
                    ' Permet de passer à la ligne entre chaque ajout d'une Url
                    Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                end if
                i = i + 1
            Next
            return tab_ID
        catch en0 as exception
            response.write(en0.message)
        end try
    end function
   
   
    ' fonction de recherche de fiche avec cas AND
    function Recherche_AND_Titre(ByVal Tab1_ID as array)
   
        try
            Dim tab_mots() as string
            Dim ds As DataSet
            Dim pRow as DataRow
            dim ID, taille, i as integer
            dim chaine, Compose_SQL as string
            dim auteur as string
            auteur = DropDownList1.selecteditem.Text
   
            chaine = trim(Arbre1TextClefs.Text)
            chaine = Traitement_Chaine_SQL(chaine)
            ' récupére chaque mot séparé par un espace
            tab_mots = split(chaine," ")
            taille = tab_mots.length()
            ' compose la chaine SQL a transmettre
            Compose_SQL = "SELECT * FROM [Fiches] WHERE "
            for i=0 to Taille - 1
                if i = taille - 1 then
                    ' on arrive au dernier élement du tableau
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL & "([Fiches].[Titre] like '%" + tab_mots(i) + "%'"
                        if Auteur <> "TOUS" then
                            Compose_SQL = Compose_SQL + " AND [FICHES].[AUTEUR] = '" + auteur + "'"
                        end if
                        Compose_SQL = Compose_SQL + ")"
                    else
                        if Auteur = "TOUS" then
                            Compose_SQL = "SELECT * FROM [Fiches]"
                        else
                            Compose_SQL = Compose_SQL + "[FICHES].[AUTEUR] = '" + auteur + "'"
                        end if
                    end if
                else
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL & "([Fiches].[Titre] like '%" + tab_mots(i) + "%') AND "
                    end if
                end if
            next
   
            ' initialisation des variables
            i = 0
            Taille = 0
            ' recherche des fiches dans la base de données
            ds = MyQueryMethod(compose_SQL)
            taille = ds.Tables("Table").Rows.count
            ' on redimensionne le tableau
            dim tab_ID(taille-1) as string
            for each pRow In ds.Tables("Table").Rows
                ' fonction de test de présence de la fiche dans le tableau
                chaine = pRow("ID")
                if test_presence_ID(Tab1_ID,chaine) then
                else
                    ' on enregistre l'ID de la fiche dans le tableau
                    tab_ID(i) = chaine
                    if pROw("Genre") = 1 then
                        ' Ajouter les Url dans la page
                        dim h2 as new Hyperlink()
                        h2.text = pRow("Titre") & " (Répertoire)"
                        h2.NavigateUrl = "bdcArbre1.aspx?From=local&ID=" + tab_ID(i) + "&Champs=" + Arbre1TextClefs.Text + "&Check=" + selection.selectedValue
                        h2.target = "sommaire_bdc"
                        ' permet de choisir la taille de la police
                        h2.font.size=FontUnit.XSmall
                        Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                        Arbre1Panel.controls.add(h2)
                        ' Permet de passer à la ligne entre chaque ajout d'une Url
                        Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                    else
                        ' Ajouter les Url dans la page
                        dim h1 as new Hyperlink()
                        h1.text = pRow("Titre")
                        h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + tab_ID(i)
                        h1.target = "principal_bdc"
                        ' permet de choisir la taille de la police
                        h1.font.size=FontUnit.XSmall
                        Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                        Arbre1Panel.controls.add(h1)
                        ' Permet de passer à la ligne entre chaque ajout d'une Url
                        Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                    end if
                end if
                i = i + 1
            Next
        catch en1 as exception
            response.write(en1.message)
        end try
    end function
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' OR                                                                                    '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' fonction de recherche de fiche avec cas OR
    function Recherche_OR_Corps() as array
   
        try
            Dim tab_mots() as string
            Dim ds As DataSet
            Dim pRow as DataRow
            dim ID, taille, i as integer
            dim chaine,chaine1, Compose_SQL as string
            dim auteur as string
            auteur = DropDownList1.selecteditem.Text
   
            chaine = trim(Arbre1TextClefs.Text)
            chaine = Traitement_Chaine_SQL(chaine)
            ' récupére chaque mot séparé par un espace
            tab_mots = split(chaine," ")
            taille = tab_mots.length()
            ' compose la chaine SQL a transmettre
            Compose_SQL = "SELECT * FROM [Fiches] WHERE ("
            for i=0 to Taille - 1
                if i = taille - 1 then
                    ' on arrive au dernier élement du tableau
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL & "[Fiches].[Corps] like '%" + tab_mots(i) + "%')"
                        if Auteur <> "TOUS" then
                            Compose_SQL = Compose_SQL + " AND [FICHES].[AUTEUR] = '" + auteur + "'"
                        end if
                        'Compose_SQL = Compose_SQL + ")"
                    else
                        if Auteur = "TOUS" then
                            Compose_SQL = "SELECT * FROM [Fiches]"
                        else
                            Compose_SQL = Compose_SQL + "[FICHES].[AUTEUR] = '" + auteur + "')"
                        end if
                    end if
                else
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL & "[Fiches].[Corps] like '%" + tab_mots(i) + "%' OR "
                    end if
                end if
            next
   
            ' initialisation des variables
            i = 0
            Taille = 0
            ' recherche des fiches dans la base de données
            ds = MyQueryMethod(compose_SQL)
            taille = ds.Tables("Table").Rows.count
            dim tab_ID(taille-1) as string
            for each pRow In ds.Tables("Table").Rows
                tab_ID(i) = pRow("ID")
                if pROw("Genre") = 1 then
                    ' affche toutes les fiches du répertoire
                    ' Ajouter les Url dans la page
                    dim h2 as new Hyperlink()
                    h2.text = pRow("Titre") & " (Répertoire)"
                    h2.NavigateUrl = "bdcArbre1.aspx?From=local&ID=" + tab_ID(i) + "&Champs=" + Arbre1TextClefs.Text + "&Check=" + selection.selectedValue
                    h2.target = "sommaire_bdc"
                    ' permet de choisir la taille de la police
                    h2.font.size=FontUnit.XSmall
                    Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                    Arbre1Panel.controls.add(h2)
                    ' Permet de passer à la ligne entre chaque ajout d'une Url
                    Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                else
                    ' Ajouter les Url dans la page
                    dim h1 as new Hyperlink()
                    h1.text = pRow("Titre")
                    h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + tab_ID(i)
                    h1.target = "principal_bdc"
                    ' permet de choisir la taille de la police
                    h1.font.size=FontUnit.XSmall
                    Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                    Arbre1Panel.controls.add(h1)
                    ' Permet de passer à la ligne entre chaque ajout d'une Url
                    Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                end if
                i = i + 1
            Next
            return tab_ID
        catch en2 as exception
            response.write(en2.message & "<br>")
        end try
    end function
   
   
    ' fonction de recherche de fiche avec cas OR
    function Recherche_OR_Titre(ByVal Tab1_ID as array)
   
        try
            Dim tab_mots() as string
            Dim ds As DataSet
            Dim pRow as DataRow
            dim ID, taille, i as integer
            dim chaine, Compose_SQL as string
            dim auteur as string
            auteur = DropDownList1.selecteditem.Text
   
            chaine = trim(Arbre1TextClefs.Text)
            chaine = Traitement_Chaine_SQL(chaine)
            ' récupére chaque mot séparé par un espace
            tab_mots = split(chaine," ")
            taille = tab_mots.length()
            ' compose la chaine SQL a transmettre
            Compose_SQL = "SELECT * FROM [Fiches] WHERE ("
            for i=0 to Taille - 1
                if i = taille - 1 then
                    ' on arrive au dernier élement du tableau
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL & "[Fiches].[Titre] like '%" + tab_mots(i) + "%')"
                        if Auteur <> "TOUS" then
                            Compose_SQL = Compose_SQL + " AND [FICHES].[AUTEUR] = '" + auteur + "'"
                        end if
                        'Compose_SQL = Compose_SQL + ")"
   
                    else
                        if Auteur = "TOUS" then
                            Compose_SQL = "SELECT * FROM [Fiches]"
                        else
                            Compose_SQL = Compose_SQL + "[FICHES].[AUTEUR] = '" + auteur + "')"
                        end if
                    end if
                else
                    if tab_mots(i) <> "" then
                        ' la chaine n'est pas nulle
                        Compose_SQL = Compose_SQL & "[Fiches].[Titre] like '%" + tab_mots(i) + "%' OR "
                    end if
                end if
            next
   
            ' initialisation des variables
            i = 0
            Taille = 0
            ' recherche des fiches dans la base de données
            ds = MyQueryMethod(compose_SQL)
            taille = ds.Tables("Table").Rows.count
            ' on redimensionne le tableau
            dim tab_ID(taille-1) as string
            for each pRow In ds.Tables("Table").Rows
                ' fonction de test de présence de la fiche dans le tableau
                chaine = pRow("ID")
                if test_presence_ID(Tab1_ID,chaine) then
                else
                    tab_ID(i) = chaine
                    if pROw("Genre") = 1 then
                        ' affche toutes les fiches du répertoire
                        ' Ajouter les Url dans la page
                        dim h2 as new Hyperlink()
                        h2.text = pRow("Titre") & " (Répertoire)"
                        h2.NavigateUrl = "bdcArbre1.aspx?From=local&ID=" + tab_ID(i) + "&Champs=" + Arbre1TextClefs.Text + "&Check=" + selection.selectedValue
                        h2.target = "sommaire_bdc"
                        ' permet de choisir la taille de la police
                        h2.font.size=FontUnit.XSmall
                        Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                        Arbre1Panel.controls.add(h2)
                        ' Permet de passer à la ligne entre chaque ajout d'une Url
                        Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                    else
                        ' Ajouter les Url dans la page
                        dim h1 as new Hyperlink()
                        h1.text = pRow("Titre")
                        h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + tab_ID(i)
                        h1.target = "principal_bdc"
                        ' permet de choisir la taille de la police
                        h1.font.size=FontUnit.XSmall
                        Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                        Arbre1Panel.controls.add(h1)
                        ' Permet de passer à la ligne entre chaque ajout d'une Url
                        Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                    end if
                end if
                i = i + 1
            Next
        catch en2 as exception
            response.write("<br>" & en2.message)
        end try
    end function
   
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' TEXTE EXACTE                                                                          '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' fonction de recherche de fiche avec cas TEXTE EXACTE
    function Recherche_EXACTE_Corps() as array
        Dim tab_mots() as string
        Dim ds As DataSet
        Dim pRow as DataRow
        dim ID, taille, i as integer
        dim chaine,chaine1, Compose_SQL as string
        dim auteur as string
        auteur = DropDownList1.selecteditem.Text
   
        chaine = trim(Arbre1TextClefs.Text)
        chaine = Traitement_Chaine_SQL(chaine)
        ' compose la chaine SQL a transmettre
        Compose_SQL = "SELECT * FROM [Fiches] WHERE "
        if chaine <> "" then
            ' la chaine n'est pas nulle
            Compose_SQL = Compose_SQL & " Corps LIKE '%" + chaine + "%'"
        end if
        ' initialisation des variables
        i = 0
        Taille = 0
        ' recherche des fiches dans la base de données
        ds = MyQueryMethod(compose_SQL)
        try
            taille = ds.Tables("Table").Rows.count
            dim tab_ID(taille-1) as string
            for each pRow In ds.Tables("Table").Rows
                tab_ID(i) = pRow("ID")
                ' Ajouter les Url dans la page
                dim h1 as new Hyperlink()
                h1.text = pRow("Titre")
                h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + tab_ID(i)
                h1.target = "principal_bdc"
                ' permet de choisir la taille de la police
                h1.font.size=FontUnit.XSmall
                Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                Arbre1Panel.controls.add(h1)
                ' Permet de passer à la ligne entre chaque ajout d'une Url
                Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                i = i + 1
            Next
            return tab_ID
         catch en0 as exception
            response.write(en0.message)
         end try
   
    end function
   
    ' fonction de recherche de fiche avec cas TEXTE EXCATE
    function Recherche_EXACTE_Titre(ByVal Tab1_ID as array)
        Dim tab_mots() as string
        Dim ds As DataSet
        Dim pRow as DataRow
        dim ID, taille, i as integer
        dim chaine, Compose_SQL as string
        dim auteur as string
        auteur = DropDownList1.selecteditem.Text
   
        chaine = trim(Arbre1TextClefs.Text)
        chaine = Traitement_Chaine_SQL(chaine)
        ' compose la chaine SQL a transmettre
        Compose_SQL = "SELECT * FROM [Fiches] WHERE "
        if chaine <> "" then
            ' la chaine n'est pas nulle
            'Compose_SQL = Compose_SQL & "([Fiches].[Titre] LIKE '%" + chaine + "%')"
            Compose_SQL = Compose_SQL & "[Fiches].[Titre] LIKE '%" + chaine + "%'"
        end if
        ' initialisation des variables
        i = 0
        Taille = 0
        ' recherche des fiches dans la base de données
        ds = MyQueryMethod(compose_SQL)
        try
            taille = ds.Tables("Table").Rows.count
            ' on redimensionne le tableau
            dim tab_ID(taille) as string
            for each pRow In ds.Tables("Table").Rows
                ' fonction de test de présence de la fiche dans le tableau
                chaine = pRow("ID")
                if test_presence_ID(Tab1_ID,chaine) then
                else
                    tab_ID(i) = chaine
                    if pROw("Genre") = 1 then
                        ' Ajouter les Url dans la page
                        dim h2 as new Hyperlink()
                        h2.text = pRow("Titre") & " (Répertoire)"
                        h2.NavigateUrl = "bdcArbre1.aspx?From=local&ID=" + tab_ID(i) + "&Champs=" + Arbre1TextClefs.Text + "&Check=" + selection.selectedValue
                        h2.target = "sommaire_bdc"
                        ' permet de choisir la taille de la police
                        h2.font.size=FontUnit.XSmall
                        Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                        Arbre1Panel.controls.add(h2)
                        ' Permet de passer à la ligne entre chaque ajout d'une Url
                        Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                    else
                        ' Ajouter les Url dans la page
                        dim h1 as new Hyperlink()
                        h1.text = pRow("Titre")
                        h1.NavigateUrl = "bdcFiche.aspx?From=bdcArbre1&ID=" + tab_ID(i)
                        h1.target = "principal_bdc"
                        ' permet de choisir la taille de la police
                        h1.font.size=FontUnit.XSmall
                        Arbre1Panel.HorizontalAlign = HorizontalAlign.Left
                        Arbre1Panel.controls.add(h1)
                        ' Permet de passer à la ligne entre chaque ajout d'une Url
                        Arbre1Panel.Controls.Add(New LiteralControl("<br>"))
                    end if
                end if
                i = i + 1
            Next
        catch en1 as exception
            response.write(en1.message)
        end try
    end function

</script>
<html>
<head>
    <title>Annuaire</title>
    <meta http-equiv="Content-Language" content="fr" />
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <meta content="Microsoft FrontPage 5.0" name="GENERATOR" />
    <meta content="FrontPage.Editor.Document" name="ProgId" />
    <base target="principal" />
    <meta content="bars 011, default" name="Microsoft Theme" />
</head>
<body text="#000000" vlink="#996600" alink="#993300" link="#666633" bgcolor="#ffffff" background="Images/barbkgde.gif">
    <form target="_self" runat="server">
        <table height="100%" width="100%" align="center">
            <tbody>
                <tr height="4%">
                    <td align="middle" colspan="2">
                        <font face="Times New Roman, Times"><strong><font face="Arial" color="#666633">RECHERCHE
                        PAR MOTS-CLEFS</font></strong></font></td>
                </tr>
                <tr height="4%">
                    <td align="left" colspan="2">
                        <asp:Image id="Image1" runat="server" ImageUrl="Images/barbul1e.gif"></asp:Image>
                        <asp:HyperLink id="ArbreLienClefs" runat="server" Target="_self" NavigateUrl="bdcArbre.aspx" Font-Size="Small" Font-Names="Arial">Arbre de recherche</asp:HyperLink>
                        <br />
                        <hr align="center" width="80%" color="#666633" noshade="noshade" size="3" />
                    </td>
                </tr>
                <tr height="3%">
                    <td>
                        <strong><font face="Arial" color="#666633" size="2">Entrez le mot-clé à rechercher&nbsp;:</font></strong>
                    </td>
                </tr>
                <tr height="3%">
                    <td>
                        <asp:RadioButtonList id="selection" runat="server" Font-Size="X-Small" Font-Names="Arial" RepeatDirection="Horizontal" Width="30%">
                            <asp:ListItem Value="1">Et</asp:ListItem>
                            <asp:ListItem Value="2" Selected="True">Ou</asp:ListItem>
                        </asp:RadioButtonList>
                    </td>
                </tr>
                <tr height="4%">
                    <td>
                        <asp:TextBox id="Arbre1TextClefs" runat="server" Width="80%"></asp:TextBox>
                        <asp:Button id="Arbre1BtnOk" runat="server" CausesValidation="False" BorderWidth="2px" BorderStyle="Ridge" BackColor="WhiteSmoke" Text="Ok"></asp:Button>
                        &nbsp;&nbsp; <asp:Label id="Erreur" runat="server" forecolor="Red" font-size="X-Small" font-names="Arial"></asp:Label></td>
                </tr>
                <tr height="3%">
                    <td>
                        <strong><font face="Arial" color="#666633" size="2">Sélectionnez l'auteur de la fiche
                        :</font></strong>
                    </td>
                </tr>
                <tr height="3%">
                    <td>
                        <asp:DropDownList id="DropDownList1" runat="server" Width="80%"></asp:DropDownList>
                        <br />
                        <hr align="center" width="80%" color="#666633" noshade="noshade" size="3" />
                    </td>
                </tr>
                <tr height="3%">
                    <td colspan="2">
                        <strong><font face="Arial" color="#666633" size="2">Résultat de la recherche&nbsp;:</font></strong></td>
                </tr>
                <tr>
                    <td colspan="2">
                        <asp:Panel id="Arbre1Panel" runat="server" Width="100%" BackColor="Ivory" Height="100%"></asp:Panel>
                    </td>
                </tr>
            </tbody>
        </table>
    </form>
    <wmx:SqlDataSourceControl id="SqlDataSourceControl1" runat="server" ConnectionString="server='srvfivq'; trusted_connection=true; database='Connaissances'" SelectCommand="select distinct Auteur  Fiches"></wmx:SqlDataSourceControl>
</body>
</html>

le problème que ça s'afficje sur Firefox et pas sur Internet Explorer 6, J'ai bien l'impression que c'est un problème de Treeview ou un problème du javascipt.

Quelqu'un peut m'aider?

Merci

Lella



Cette discussion est classé dans : sql, chaine, id, compose, if


Répondre à ce message

Sujets en rapport avec ce message

Pb de syntaxe??? [ par benben ] Voila l'erreur que j'obtiens:Microsoft OLE DB Provider for SQL Server error '80040e07' Syntax error converting the varchar value '1, 2, 3' to a column peut mettre une variable ds une chaine sql [ par serial ] peut on mettre une variable ds une chaine sqlexampledim valeurmoi=champ de ma table"SELECT*FROM table WHERE moi=valeur"?????j'ai essayer ca ne marche requete SQL [ par Ben ] Salut, j'ai un problème avec la requete que voiciRs.Open "Select * from netannu where id="&RefSite,ConnJe me demande ce qui clocheEt voici le message trigger en SQL server [ par Kurul1 ] Bonjour à tous J'ai un petit souci avec les triggers. J'ai une table zone avec un identifiant id_zone et un libelle libelle_zone. Jusque là, pas de pb Problème de trigger en SQL server [ par diabolooo ] Salut à tous,j'ai une table dans une base SQL server qui comporte 4 champs (id, date, heure, mesure)la clé primaire est composée des champs id, date, Requete SQl en Asp.net [ par kenzo080 ] Bonjour,Je cherche realise la requete suivante:string SQL="SELECT Id_Type,Name_Type,Adresse_Type FROM TbType";Cette requete me retourne un resultat po Recupére Rrequest.querystring dans une chaine sql [ par ThePooh ] BonjourComme le nom l'indique je souhaite insérer dans ma chaine sql l'information que je récupère dans mon request.QueryString, j'espère que j'ai été ID du dernier Insert en SQL ? [ par odenis59 ] j'ai lu deux codes sources sur ce site indiquant l'utilisation de T-SQL (par @@identity) pour obtenir l'ID de l'enregistrement nouvellement cree mais chaine de connexion entre asp et sql server [ par mary_tssi ] je veux une petite exemple :chaine de connexion pour connecter le code asp et la base de données sql servermerci d'avance Probleme DataSet cause une erreur interne du serveur [ par MrJAY42 ] Bonjour les développeurs!J'ai un ptit probleme tout bizzard :J'ai créé un web service qui contient plusieurs méthodes faisant chacune différente requê


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,172 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.