Solved

Search by keyword..

Posted on 2003-11-06
9
368 Views
Last Modified: 2010-04-01
Hi,
  I posted a question at :
http://www.experts-exchange.com/Web/Web_Languages/JSP/Q_20788645.html
and some modifications needs to be done such as :

choosing from different tables, displaying it and etc.Could anyone help me, i really need this urgently.

The modifications:
->Choose from diferrent table.
I have a table called organ that has username,organname.
A table skil that has skillid,skilldescription
A table project that has projectname,username,duration,skillid ,and etc..

If the user clicks an organ name mer22,all the projects under the organation should appear
if the user clicks all, everything should apper and etc.
If you need more explanation,pls letme know


0
Comment
Question by:Jasbir21
  • 5
  • 4
9 Comments
 
LVL 19

Expert Comment

by:Kuldeepchaturvedi
ID: 9693065
Hi Jasbir I looked at your previous question and I am kind of not understanding it... can you please post both of your jsps again..?
(both means one that asks user to select the search crietria and next in which you show the results...

Regards
0
 

Author Comment

by:Jasbir21
ID: 9693273
Hi,
The jsp :( i have inserted in commands)

<%@ page import="java.sql.* ,com.dhal.*"%>
<%@ page import="java.util.StringTokenizer, java.lang.*"%>
<jsp:useBean id="s" class="com.dhal.skil" scope="session"/>
<jsp:setProperty name="s" property="*"/>
<html>
<body BGColor="#FFFFF0">

<table border="4" BGColor="#FFF8DC" width="100%" CELLPADDING="4">
  <tr>
    <td>
      <Font Color="#000000" Face="Garamond" Size="4">
        <b>View Organizations</b>
      </Font>
    </td>
  </tr>
</table>
<br>
<form action="ti.jsp" name="form1">
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  Search by Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
  <select name="choose">
    <option value="">Select a skill</option>
    <option value="*">All</option>


<%
  String connectionURL = "jdbc:mysql://localhost:3306/mydatabase?user=;password=";
  Connection connection = null;
  Statement stmt=null;
  ResultSet rs=null;
 
  try
  {
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    connection = DriverManager.getConnection(connectionURL, "", "");
   
    String myskill="select * from skill";
    stmt=connection.createStatement();
    rs=stmt.executeQuery(myskill);

    while(rs.next())
    {
%>
    <option value=<%= rs.getString("skillid") %>><%= rs.getString("skillid") %></option>
<%
    }

    // close this!!
    rs.close() ;
    rs = null ;
    stmt.close() ;
    stmt = null ;
%>

  </select>
  </p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  Search by keyword&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
  <input type="text" name="keyword" size=20/>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <input type="submit" value="Go">

  <br><br><hr>

<%
//this is for search by keyword where the user can enter anything
    String keyword = request.getParameter( "keyword" ) ;
    System.out.println(keyword);
 
    String where = "" ;

    if( keyword != null && keyword.trim().length()!= 0 )
    {
      StringTokenizer st = new StringTokenizer( keyword ) ;
 
      while( st.hasMoreTokens() )
      {
        if( where.length() == 0 )
          where = " ( " ;
        String word = st.nextToken() ;
//it searches the keyword with description field and skillid which is in the skill table..


       where += "( skilldescription LIKE '%" + word +"%'OR skillid LIKE '%" + word +"%')" ;
       
        if( st.hasMoreTokens() )
          where += " OR " ;
        else
          where += " ) " ;
      }

     
    }

//This takes the chose chosen by the user from the combo
//currently the query is stored in the where string and now you combine the where with the new query of the choose from combo...

    String choose = request.getParameter( "choose" );

    if( choose != null && choose.trim().length() != 0 )
    {
      if( where.length() > 0 )
        where += " OR" ;
      where += "( skillid = '" + choose + "' )" ;
    }

    if( where.length() > 0 )
    {
%>
  <table border="4"BGColor="#FFF8DC" width="60%" CELLPADDING="4" style="margin-left:190px;" >
    <tr>
      <td align=center>
        Skill ID
      </td>
      <td align=center>
        Description
      </td>
    </tr>
  </table>

  <table border="1"BGColor="#FFFFF0" width="60%" CELLPADDING="4" style="margin-left:190px;" >
<%
      String query=null;
      where = " WHERE " + where ;
   
      if(choose.equals("*"))
           query="Select skillid,skilldescription from skill";
       
       else
          query= "Select skillid,skilldescription from skill " + where ;
   
      // PRINT OUT THE QUERY FOR DEBUG PURPOSES
      out.println( "<b>Executing " + query + "</b>" ) ;
 
      stmt=connection.createStatement();
      rs = stmt.executeQuery( query ) ;
  //This is the place where result is printed out
 if( rs.next() )
      {
          do
          {
%>
    <tr>
      <td align=center><%= rs.getString( "skillid" ) %></td>
      <td align=center> <%= rs.getString( "skilldescription" ) %></td>
    </tr>
<%
          } while( rs.next() ) ;
      }
      else
      {
%>

    <tr>
      <td colspan="2" align=center>Sorry, no results found</td>
    </tr>
<%
      }
%>
<%

      rs.close() ;
      rs = null ;
      stmt.close() ;
      stmt = null ;
      connection.close() ;
      connection = null ;
%>
  </table>
<%
    }
  }
  catch( SQLException ex )
  {
     ex.printStackTrace() ;
  }
  catch( ClassNotFoundException ex )
  {
     ex.printStackTrace() ;
  }
  finally
  {
    // MAKE SURE ALL DB THINGS ARE CLOSED
    try { if( rs != null ) rs.close() ; } catch( Exception ex ) { }
    try { if( stmt != null ) stmt.close() ; } catch( Exception ex ) { }
    try { if( connection != null ) connection.close() ; } catch( Exception ex ) { }
  }
%>
</form>
</body>
</html>

The whole thing was done in one jsp

Thanks
0
 
LVL 19

Expert Comment

by:Kuldeepchaturvedi
ID: 9693535
Okay so as far as I understand it, You have got it going for one table out of three. now you want to extend it for next two more tables....
what I would suggest is this.

Create one more jsp which is having a drop down with your three table names.
let it submit to t1.jsp and in t1 jsp get your file name from the parameter that is coming to it.
something like this....:
<form action="ti.jsp" name="form1">
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  Search by Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
  <select name="filename">
    <option value="skill">skill</option>
    <option value="oragn">organization</option>
  <option value="project">project</option>
  </select>
  </p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  Search by keyword&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
  <input type="submit" value="Go">

  <br><br><hr>
</form>
now in t1.jsp make following changes
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
<%@ page import="java.sql.* ,com.dhal.*"%>
<%@ page import="java.util.StringTokenizer, java.lang.*"%>
<jsp:useBean id="s" class="com.dhal.skil" scope="session"/>
<jsp:setProperty name="s" property="*"/>
<%String fname=request.getParameter("filename");
if(fname==null)
fname=skill;
%>
<html>
<body BGColor="#FFFFF0">

<table border="4" BGColor="#FFF8DC" width="100%" CELLPADDING="4">
  <tr>
    <td>
      <Font Color="#000000" Face="Garamond" Size="4">
        <b>View Organizations</b>
      </Font>
    </td>
  </tr>
</table>
<br>
<form action="ti.jsp" name="form1">
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  Search by Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
  <select name="choose">
    <option value="">Select a <%=fname%></option>
    <option value="*">All</option>


<%
  String connectionURL = "jdbc:mysql://localhost:3306/mydatabase?user=;password=";
  Connection connection = null;
  Statement stmt=null;
  ResultSet rs=null;
 
  try
  {
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    connection = DriverManager.getConnection(connectionURL, "", "");
   
    String myskill="select * from "+fname;
    stmt=connection.createStatement();
    rs=stmt.executeQuery(myskill);

    while(rs.next())
    {
%>
    <option value=<%= rs.getString(1) %>><%= rs.getString(1) %></option>
<%
    }

    // close this!!
    rs.close() ;
    rs = null ;
    stmt.close() ;
    stmt = null ;
%>

  </select>
  </p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  Search by keyword&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
  <input type="text" name="keyword" size=20/>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <input type="submit" value="Go">

  <br><br><hr>

<%
//this is for search by keyword where the user can enter anything
    String keyword = request.getParameter( "keyword" ) ;
    System.out.println(keyword);
 
    String where = "" ;

    if( keyword != null && keyword.trim().length()!= 0 )
    {
      StringTokenizer st = new StringTokenizer( keyword ) ;
 
      while( st.hasMoreTokens() )
      {
        if( where.length() == 0 )
          where = " ( " ;
        String word = st.nextToken() ;
//it searches the keyword with description field and skillid which is in the skill table..

>>>>>>>>>>>//Here you will have to put a if condition using the filename.
if(fname.equals("skills"))
       where += "( skilldescription LIKE '%" + word +"%'OR skillid LIKE '%" + word +"%')" ;
if(fname.equals("project"))
      where += "( projectdescription LIKE '%" + word +"%'OR projectid LIKE '%" + word +"%')" ;
if(fname.equals("organ"))
      where += "( organdescription LIKE '%" + word +"%'OR organid LIKE '%" + word +"%')" ;
//Or something like this
        if( st.hasMoreTokens() )
          where += " OR " ;
        else
          where += " ) " ;
      }

     
    }

//This takes the chose chosen by the user from the combo
//currently the query is stored in the where string and now you combine the where with the new query of the choose from combo...

    String choose = request.getParameter( "choose" );

    if( choose != null && choose.trim().length() != 0 )
    {
      if( where.length() > 0 )
        where += " OR" ;
//Same if condtions here as well
      where += "( skillid = '" + choose + "' )" ;
    }

    if( where.length() > 0 )
    {
%>
  <table border="4"BGColor="#FFF8DC" width="60%" CELLPADDING="4" style="margin-left:190px;" >
    <tr>
      <td align=center>
        Skill ID
      </td>
      <td align=center>
        Description
      </td>
    </tr>
  </table>

  <table border="1"BGColor="#FFFFF0" width="60%" CELLPADDING="4" style="margin-left:190px;" >
<%
      String query=null;
      where = " WHERE " + where ;
   
      if(choose.equals("*"))
//All this qry will also change depending upon what value is present in parameter fname....
           query="Select skillid,skilldescription from skill";
       
       else
          query= "Select skillid,skilldescription from skill " + where ;
   
      // PRINT OUT THE QUERY FOR DEBUG PURPOSES
      out.println( "<b>Executing " + query + "</b>" ) ;
 
      stmt=connection.createStatement();
      rs = stmt.executeQuery( query ) ;
  //This is the place where result is printed out
 if( rs.next() )
      {
          do
          {
%>
    <tr>
      <td align=center><%= rs.getString( "skillid" ) %></td>
      <td align=center> <%= rs.getString( "skilldescription" ) %></td>
    </tr>
<%
          } while( rs.next() ) ;
      }
      else
      {
%>

    <tr>
      <td colspan="2" align=center>Sorry, no results found</td>
    </tr>
<%
      }
%>
<%

      rs.close() ;
      rs = null ;
      stmt.close() ;
      stmt = null ;
      connection.close() ;
      connection = null ;
%>
  </table>
<%
    }
  }
  catch( SQLException ex )
  {
     ex.printStackTrace() ;
  }
  catch( ClassNotFoundException ex )
  {
     ex.printStackTrace() ;
  }
  finally
  {
    // MAKE SURE ALL DB THINGS ARE CLOSED
    try { if( rs != null ) rs.close() ; } catch( Exception ex ) { }
    try { if( stmt != null ) stmt.close() ; } catch( Exception ex ) { }
    try { if( connection != null ) connection.close() ; } catch( Exception ex ) { }
  }
%>
</form>
</body>
</html>

Please let me know if you need more help.
Regards
0
 

Author Comment

by:Jasbir21
ID: 9693759
Hi,
   I think understand , but what my lecturer wants is something like this:

Search by skill:            <rs.....>(skills from the database),
Search by organization:<rs.....>(organization names from the database)
Search by all               : user can enter anything


For example, if a user choses teh Teacher option, and then click Search.The names of all the organization with the projects that needs the skill gets displayed.

However if he choses the organization (maybe MErcy), again the table concerning the project gets displayed.


However he could also select Teacher option(from combo), select Mercy from combo and then presses Search,

Only mercy with the data skills gets displayed(including the projects gets displayed)

However a user could choose skill from (nurse)combo, organization (little Lamb), and then enter project info in search by keyword and press search, the info gets displayed

However this same info can be obtained by entering Teacher,Mercy at the search by keyword..


Currently, what can be done is that a user could either use
Search by skill: <rs....>
or
use
Search by keyword: where a user can enter skil or descripiton.
.

Thanks
0
What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

 
LVL 19

Accepted Solution

by:
Kuldeepchaturvedi earned 250 total points
ID: 9699352
Sorry for the delayed response:
So its like you want to show the data from Project table depending upon the search values from skill/organ or a key word...
Here is what you will have to do..

1. create one more drop down with org .....


<%@ page import="java.sql.* ,com.dhal.*"%>
<%@ page import="java.util.StringTokenizer, java.lang.*"%>
<jsp:useBean id="s" class="com.dhal.skil" scope="session"/>
<jsp:setProperty name="s" property="*"/>
<html>
<body BGColor="#FFFFF0">

<table border="4" BGColor="#FFF8DC" width="100%" CELLPADDING="4">
 <tr>
   <td>
     <Font Color="#000000" Face="Garamond" Size="4">
       <b>View Organizations</b>
     </Font>
   </td>
 </tr>
</table>
<br>
<form action="ti.jsp" name="form1">
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Search by Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
 <select name="choose">
   <option value="">Select a skill</option>
   <option value="*">All</option>


<%
 String connectionURL = "jdbc:mysql://localhost:3306/mydatabase?user=;password=";
 Connection connection = null;
 Statement stmt=null;
 ResultSet rs=null;
 
 try
 {
   Class.forName("com.mysql.jdbc.Driver").newInstance();
   connection = DriverManager.getConnection(connectionURL, "", "");
 
    String myskill="select * from skill";
   stmt=connection.createStatement();
   rs=stmt.executeQuery(myskill);

   while(rs.next())
   {
%>
   <option value=<%= rs.getString("skillid") %>><%= rs.getString("skillid") %></option>
<%
   }

   // close this!!
   rs.close() ;
%>
</select>
<select name="project">
   <option value="">Select a project</option>
   <option value="*">All</option>
<%
String myproj="select * from organ";
      rs=stmt.executeQuery(myproj);

   while(rs.next())
   {
%>
   <option value=<%= rs.getString("organname") %>><%= rs.getString("organname") %></option>
<%
   }

   // close this!!
   rs.close() ;

   rs = null ;
    stmt.close() ;
   stmt = null ;
%>

 </select>
 </p>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Search by keyword&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:  
 <input type="text" name="keyword" size=20/>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 <input type="submit" value="Go">

 <br><br><hr>

<%
//this is for search by keyword where the user can enter anything
   String keyword = request.getParameter( "keyword" ) ;
   System.out.println(keyword);
 
   String where = "" ;

   if( keyword != null && keyword.trim().length()!= 0 )
   {
     StringTokenizer st = new StringTokenizer( keyword ) ;
 
     while( st.hasMoreTokens() )
     {
       if( where.length() == 0 )
         where = " ( " ;
       String word = st.nextToken() ;
//it searches the keyword with description field and skillid which is in the skill table..


      where += "(skillid LIKE '%" + word +"%' "OR project LIKE '%" + word +"%'")" ;
       
       if( st.hasMoreTokens() )
         where += " OR " ;
       else
         where += " ) " ;
     }

   
    }

//This takes the chose chosen by the user from the combo
//currently the query is stored in the where string and now you combine the where with the new query of the choose from combo...

   String choose = request.getParameter( "choose" );

   if( choose != null && choose.trim().length() != 0 )
   {
     if( where.length() > 0 )
       where += " OR" ;
     where += "( skillid = '" + choose + "' )" ;
   }
String project = request.getParameter("project");
if( project != null && project.trim().length() != 0 && !project.equals("*"))
   {
     if( where.length() > 0 )
       where += " OR" ;
     where += "( project = '" + project + "' )" ;
   }

   if( where.length() > 0 )
   {
%>
 <table border="4"BGColor="#FFF8DC" width="60%" CELLPADDING="4" style="margin-left:190px;" >
   <tr>
     <td align=center>
       Skill ID
     </td>
     <td align=center>
       Description
     </td>
   </tr>
 </table>

 <table border="1"BGColor="#FFFFF0" width="60%" CELLPADDING="4" style="margin-left:190px;" >
<%
     String query=null;
     where = " WHERE " + where ;
   
     if(choose.equals("*")&&project.equals("*"))
          query="Select * from project";
     
       else
         query= "Select * from project " + where ;
 
      // PRINT OUT THE QUERY FOR DEBUG PURPOSES
     out.println( "<b>Executing " + query + "</b>" ) ;
 
     stmt=connection.createStatement();
     rs = stmt.executeQuery( query ) ;
 //This is the place where result is printed out
if( rs.next() )
     {
         do
         {
%>
   <tr>
     <td align=center><%= rs.getString( 1 ) %></td>
     <td align=center> <%= rs.getString( 2 ) %></td>
//do the same thing for all the columns presnt there....
   </tr>
<%
         } while( rs.next() ) ;
     }
     else
     {
%>

   <tr>
     <td colspan="2" align=center>Sorry, no results found</td>
   </tr>
<%
     }
%>
<%

     rs.close() ;
     rs = null ;
     stmt.close() ;
     stmt = null ;
     connection.close() ;
     connection = null ;
%>
 </table>
<%
   }
 }
 catch( SQLException ex )
 {
    ex.printStackTrace() ;
 }
 catch( ClassNotFoundException ex )
 {
    ex.printStackTrace() ;
 }
 finally
 {
   // MAKE SURE ALL DB THINGS ARE CLOSED
   try { if( rs != null ) rs.close() ; } catch( Exception ex ) { }
   try { if( stmt != null ) stmt.close() ; } catch( Exception ex ) { }
   try { if( connection != null ) connection.close() ; } catch( Exception ex ) { }
 }
%>
</form>
</body>
</html>


>>>>>>>>>>>>>>>>>>>>>>
The above code may have some syntax problems and also some un accounted situations as well but it should give you a start with the code, we can refine it as we go ahead.
Hope this helps
0
 

Author Comment

by:Jasbir21
ID: 9699591
thank you, i am trying it out now...
0
 

Author Comment

by:Jasbir21
ID: 9700161
Hi,
  That part works, but know i am having trouble with something  like...
..I mean the table gets displayed with all the info but could it be in links. This is because
all info gets displayed in one page.

Something like, when the user enters queries,either by keyword,combo,project and presses Search,
It gets searches but the organizaitonname in links, when the user click the link, the table then
gets displayed.

Mercy(this is a link)

Little lamb(this is a link)

Could it be done?

Thanks
0
 
LVL 19

Expert Comment

by:Kuldeepchaturvedi
ID: 9700473
Hmm........ well it should not be that tough a job but when user clicks on the link instead of the table you should be showing them a page full with details of project.
0
 

Author Comment

by:Jasbir21
ID: 9700646
..Is it something like passing ids to the link, or do you pass the result to be displayed at the link?
IDs here means the query entered by the user,

Thanks
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

A safe way to clean winsxs folder from your windows server 2008 R2 editions
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
Illustrator's Shape Builder tool will let you combine shapes visually and interactively. This video shows the Mac version, but the tool works the same way in Windows. To follow along with this video, you can draw your own shapes or download the file…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

759 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

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now