---
title: "Problem med if-sats"
type: "forum-thread"
url: "https://www.webforum.nu/amne/java/83273-problem-med-if-sats"
topic: "Java"
topic_url: "https://www.webforum.nu/amne/java"
author: "tosses"
published: "2003-08-01T10:11:50.000Z"
updated: "2003-08-07T14:17:52.000Z"
replies: 7
views: 342
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/java/83273-problem-med-if-sats"
---

# Problem med if-sats

## #1 — tosses, 2003-08-01T10:11Z

Tja!

Jag har ett litet problem med en ifsats i det fantastiskt underbara programmeringsspråket Java -- (I JSP egentligen).

```php
symbol  : variable i 
    [javac] location: class org.apache.jsp.resultat_jsp
    [javac] if(i == rslt.getString("Fenkelbranch")){
    [javac]    ^
    [javac] 1 error
```

 

Jag har deklarerat i -- String i = "knutsson";

kan jag inte använda mig av i ???

Permalänk: https://www.webforum.nu/p/83273

## #2 — Viktor, 2003-08-01T10:30Z

Kan du lägga ut koden där problemet finns, det är lättare att hitta felet då :)

Om du vill kolla om en sträng är lika med en annan sträng så kan du inte köra med ==, det gämför bara adressen för de olika objekten. Du måste använda equals

```
if(i.equals(rslt.getString("Fenkelbranch"))){
```

Men jag tror inte det är anledningen till detta felmedelande utan det är något annat.

/Viktor

Permalänk: https://www.webforum.nu/p/1125036

## #3 — tosses, 2003-08-01T11:54Z

```php
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>

<%
if(session.getAttribute("pu")!=request.getParameter("p")){
session.setAttribute("pu", request.getParameter("p"));
}
if(request.getParameter("i")==null){
String i = "Knutsson";
} else {
String i = request.getParameter("i");
}
%>

<html>
<head>
	<title>Untitled</title>
<style>
A:link { text-decoration: none; color: #ff0000; }
A:visited { text-decoration: none; color: #ff0000; }
A:active { text-decoration: none; color:#0000ff; }
A:hover { text-decoration: none; color: #00ff00; }
</style>

<script language="javascript">

function selectItem(obj,word){
var empty = ''
if (document.adv.vSearchText.value.search(word) != -1){
document.adv.vSearchText.value=document.adv.vSearchText.value.replace('+'+word, empty)
document.adv.vSearchText.value=document.adv.vSearchText.value.replace(word+'+', empty)
document.adv.vSearchText.value=document.adv.vSearchText.value.replace(word, empty)
}
else{
if (document.adv.vSearchText.value==''){
document.adv.vSearchText.value=document.adv.vSearchText.value+word
}
else{
document.adv.vSearchText.value=document.adv.vSearchText.value+'+'+word
}
}
if (document.adv.vSearchText.value.search(word)==-1){
obj.bgColor = '#eeeeee'
}
else{
obj.bgColor = '#A5A5A5'
}
}
</script>

</head>
<body>
<%if(session.getAttribute("pu")=="branch"){

String Fenkelbranch, Kod;

Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Connection visaConn = DriverManager.getConnection("jdbc:mysql:///steget?user=steget&password=ujujuj");
Statement visaStmt = visaConn.createStatement();
String visaQr = "SELECT sni92.Fenkelbranch, sni92.Kod FROM sni92 GROUP BY sni92.Fenkelbranch";
ResultSet rslt = visaStmt.executeQuery(visaQr);%>

<table border="0" cellpadding="1" cellspacing="0">
<%while(rslt.next()){%>
<tr>
<td>
<%try {
if(i.equals(rslt.getString("Fenkelbranch"))){%>
<a name="<%=rslt.getString("Fenkelbranch")%>"></a>
<img src="pilned.gif"><a style="text-decoration: none; background-color: #DBDBDB" href="resultat.jsp"><%=rslt.getString("Fenkelbranch")%></a>
<%} else {%>
<img src="pil2.gif"><a href="resultat.jsp?i=<%=rslt.getString("Fenkelbranch")%>" target="hoger"><%=rslt.getString("Fenkelbranch")%></a>
<%}
} catch (NullPointerException e) {}%>
				
</td>
<td></td>
</tr>

		
<%try{
if(request.getParameter("i").equals(rslt.getString("Fenkelbranch"))){
Connection visaConn2 = DriverManager.getConnection("jdbc:mysql:///steget?user=steget&password=ujujuj");
Statement visaStmt2 = visaConn2.createStatement();
String visaQr2 = "SELECT sni92.Fenkelbranch, sni92.Kod, fo.PEORGNR, fo.REDNAMN, ae.BEN, ae.BEGAD, ae.UADR FROM sni92 INNER JOIN (ae INNER JOIN fo ON ae.PEORGNR = fo.PEORGNR) ON sni92.Kod = ae.NG1 WHERE (((sni92.Fenkelbranch) Like '"+request.getParameter("i")+"'));";
ResultSet rslt2 = visaStmt2.executeQuery(visaQr2);%>
					
<tr>
<td>
<table bgcolor="#eeeeee" cellpadding="2" cellspacing="0">
<%while(rslt2.next()){%>
<tr>
<td width="35" bgcolor="#ffffff"></td>
<td style="cursor:pointer; cursor:hand" onclick="javascript:selectItem(this,'<%=rslt2.getString("PEORGNR")%>')"><%if(rslt2.getString("BEN")!=null){%><font size="1" color="green"><%=rslt2.getString("BEN")%></font><%}else{%><font size="1" color="green"><%=rslt2.getString("REDNAMN")%></font><%}%></td>
<td><%if(rslt2.getString("BEGAD")!=null){%><font size="1" color="green"><%=rslt2.getString("BEGAD")%></font><%}else{%><font size="1" color="green"><%=rslt2.getString("UADR")%></font><%}%></td>
</tr>
<%}%>
</table>
</td>
</tr>
<%rslt2.close();
visaStmt2.close();
visaConn2.close();
}
} catch (NullPointerException e) {}%>

<%}%>				
</table>
<%rslt.close();
visaStmt.close();
visaConn.close();%>
<%}%>
	
  
  
  

<form method="get" action="carshow.asp" name="adv">
<table border="0" cellpadding="3" cellspacing="0" width="591">
<tr>
<td colspan="2">
<b>Sökning:</b>
<br>
<input type="text" name="vSearchText" size="40" style="width: 405px;" />
</td>
</tr>
</table>
</form>

</body>
</html>
```

 

Tyvärr funkar det inte

Permalänk: https://www.webforum.nu/p/1125073

## #4 — Viktor, 2003-08-01T12:31Z

```
if(request.getParameter("i")==null){
String i = "Knutsson";
} else {
String i = request.getParameter("i");
}
```

String i finns bara deklarerad innom blocket else, dvs så fort som du lämnar detta block så finns inte i längre. Skriv såhär istället

```
String i=null;
if(request.getParameter("i")==null){
i = "Knutsson";
} else {
i = request.getParameter("i");
}
```

då finns i deklarerad i hela programmet.

/Viktor

Permalänk: https://www.webforum.nu/p/1125097

## #5 — tosses, 2003-08-01T20:24Z

Tack så mycket!!
jag är i inlärningsfasen och behöver mycket stöd och hjälp!

Permalänk: https://www.webforum.nu/p/1125442

## #6 — tosses, 2003-08-01T20:30Z

Olika sätt?!

Finns det något "rätt" sätt att programmera en databasfråga i en annan databasfråga. 
Så som jag gjort i exemplet ovan..

val1
val2 
val3
val4 osv...

När jag klickar på val2 t.ex. så ska listan se ut som följer:

val1
val2
        undermeny till val2
        under2 till val2......
val3
val4

ja,jag hoppas ni fattar?!

Permalänk: https://www.webforum.nu/p/1125446

## #7 — tosses, 2003-08-07T13:08Z

Mera ifsats

Jag fattar inte detta med ifsats i jsp! Så här har jag skrivit:

```php
int a;
for(a=5;a<=numberOfColumns;a++){

//------------
//try{
if(request.getParameter("rubrik").equals(rsmd.getColumnName(a))){
out.print("<img src='pilned.gif'>");
out.println("<a href='resultat.jsp?rubrik="+rsmd.getColumnName(a)+"'>"+rsmd.getColumnName(a)+"</a><br>");

} else {
out.println("<a href='resultat.jsp?rubrik="+rsmd.getColumnName(a)+"'>"+rsmd.getColumnName(a)+"</a><br>");
out.print("adas");

}
//}catch (NullPointerException e) {}
//------------

}//forsats
```

 

Om getParameter rubrik equals kolumnnamnet så ska pilned.gif + lite till visas

annars så ska bl.a. adas visas

.. inget visas ..

HJÄLP !!

Permalänk: https://www.webforum.nu/p/1131210

## #8 — Jaar, 2003-08-07T14:17Z

Hmm, frågan är om det inte kastas ett undantag, fast med tanke på att du bortkommenterat catchen så har du nog kollat det...
Hmm, men testa med att vända på steken...

```
if(rsmd.getColumnName(a).equals(request.getParameter("rubrik"))  )
```

Eftersom du vet att rsmd.getColumnName inte är null iaf (troligen?) så vet du att det inte är ett nullpointer iaf...

Visas något annat på sidan? är det bara det stycket som försvinner?

Testa med en out.println("Test\<br\>") innan och efter for-blocket... Kanske en i.
kolla också så att numberOfColumns verkligen är större än 5 (for-loopen stegar ju från 5 upp till noOfColumns)

Permalänk: https://www.webforum.nu/p/1131262

---

Tråden på webben: https://www.webforum.nu/amne/java/83273-problem-med-if-sats
