?
Solved

how to check if a URL is valid before making a connection

Posted on 2006-10-24
2
Medium Priority
?
204 Views
Last Modified: 2010-04-16
Hi guys

i have this code in which I check whether there is an image stored on the server or a link to an image is provided. Now what I need is that if the image link doesn't go to a valid image then it shouldn't show the image. Also when I write some random word a s a link to the image such as 'jsadsakd' it throws an error and doesn't display the whole page at all


her is my code
----------------------
 <% if(chapter_sponsor.getImage_size() > 0){%>
                                <td>
                                    <a href ="<%= chapter_sponsor.getImage_link() %>" target="_blank" ><img src="attachments/sponsors/<%=chapter_ID%><%=chapter_sponsor.getSponsor_ID()%>" border="0" width="200" height="100"></a>      
                                </td>
                                <%}else if(!checkNull(chapter_sponsor.getSponsor_image_url()).equals("")){
                                          URL img = new URL(chapter_sponsor.getSponsor_image_url());
                                          try{
                                                HttpURLConnection con = (HttpURLConnection )img.openConnection();
                                                if(con.getResponseCode()!=HttpURLConnection.HTTP_NOT_FOUND){%>
                                                      <td>
                                                      <a href ="<%= chapter_sponsor.getImage_link() %>" target="_blank" ><img src="<%=chapter_sponsor.getSponsor_image_url()%>" border="0" width="200" height="100"></a>      
                                                      </td>
                                         <%}}catch(IOException e)
                                    { %>
                                                <td>
                                                      <a href ="<%= chapter_sponsor.getImage_link() %>" target="_blank" ><img src="http://www.ccim.com/common/images/missing_photo.gif" border="0" width="200" height="100">
                                                </td>

                              <% }}%>
0
Comment
Question by:huzefaq
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 41

Expert Comment

by:HonorGod
ID: 17798272
 Is this validation to be performed by the server?  You might try retrieving the image (on the server) before you put the image URL in the src attribute.
0
 
LVL 3

Accepted Solution

by:
royce2020 earned 2000 total points
ID: 17800447
You could try checking the link for the substing ".jpg"  for instance, the following function will return true if the link ends in a valid image extention, and false if something else (you could also add elements to ArrExtentions for more image types.):

function RealImg(strLink as string)
    ret = false
    ArrExtentions = array (".jpg",".jpeg",".gif",".png")
    for i = 0 to ubound (ArrExtentions) -1
        if lcase(left(strLink,(len(ArrExtentions(i))))) = ArrExtentions(i) then ret = true
    next i
    RealImg = ret
end function
0

Featured Post

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will inform Clients about common and important expectations from the freelancers (Experts) who are looking at your Gig.
What do responsible coders do? They don't take detrimental shortcuts. They do take reasonable security precautions, create important automation, implement sufficient logging, fix things they break, and care about users.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …
Introduction to Processes

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question