开发者

Hiding links based on db entry

开发者 https://www.devze.com 2022-12-15 08:03 出处:网络
I have some links on a page such as: < a id=\"Digg\" runat=\"server\">< img alt=\"Digg\" id=\"imgDigg\" runat=\"server\" src=\"~/resources/images/icons/social/digg_32.png\" border=\"0\" />

I have some links on a page such as:

< a id="Digg" runat="server">< img alt="Digg" id="imgDigg" runat="server" src="~/resources/images/icons/social/digg_32.png" border="0" />< /a>

I have a database table that can "turn" them on or off, in my code behind I have the following:

string[] SocialMedia = new string[] { "Twitter", "Facebook", "LinkedIn", "Digg", "Email", "Print" };
        private void CheckForSocialMedia()
        {
            int i = 0;
            for (i = 0; i < SocialMedia.Length; i++)
            {
                bool AddSocialMedia = (bool)AllowSocialMedia(SocialMedia[i]);
                if (AddSocialMedia == false)
                {
                   // Hide the link: Digg.Visible = false;
                }
            }
        }

        protected bool AllowSocialMedia(string sSocialMedia)
        {
            SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString);
            SqlCommand myCommand = myConnection.CreateCommand();
            myCommand.CommandText = " select Settings.AllowsocialMedia  " +
                                    " from ArticleSocialMediaSettings Settings " +
                                    " inner join SocialMedia on Settings.SocialMediaId = SocialMedia.id " +
                                    " where SocialMedia.NetworkName = '" + sSocialMedia + "'" +
                                    " and Settings.RetailerId =  '1234'";

            myConnection.Open();

            try
            {
                SqlDataReader myReader = myCommand.ExecuteReader();
                if (myReader.Read())
                {
     开发者_C百科               return (bool)myReader["AllowsocialMedia"];
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return true;
        }

How can I hide the link if the function returns false? Or is there a better way to do this?


It looks like that is the correct method for checking the database. To hide the link you can use:

document.getElementById("Digg").style.display = "none";

right where your comment is.


Redesigned it using a datalist

0

精彩评论

暂无评论...
验证码 换一张
取 消