0
답변 1 이미지 출력 질문 소스코드 추가해서 다시 올립니다.. 답변 1 (/p/javascript)
 try{ String jdbcDriver = "jdbc:mysql://ip/user?useUnicode=true&characterEncoding=utf8"; String dbUser = "id"; Stri..

 try{

String jdbcDriver = "jdbc:mysql://ip/user?

useUnicode=true&characterEncoding=utf8";

String dbUser = "id";

String dbPwd = "password";

conn = DriverManager.getConnection(jdbcDriver, dbUser, dbPwd);

pstmt = conn.prepareStatement("select * from banner");

rs = pstmt.executeQuery();

while(rs.next()){

%>

<tr>

<td><%= rs.getString("media") %></td>

<td><%= rs.getString("file_type") %></td>

<td><%= rs.getString("file_path") %></td>

<td><a href =  "<%= rs.getString("file_path")+rs.getString("file_name")%> target="preview";/>

<%= rs.getString("file_name") %></a></td>

<td><a href = "<%= rs.getString("url") %>"onClick = "window.open(this.href,'','width = 550, height = 400');return false;" > <%= rs.getString("url") %></a></td>

<td><%= rs.getString("register_datetime") %></td>

</tr>

<%

}

}catch(SQLException se){

se.printStackTrace();

}finally{

if(rs != null)rs.close();

if(pstmt != null) pstmt.close();

if(conn != null) conn.close();

}

%>

</tbody>

</table>

</div></td>

<td>&nbsp;</td>

<td><div id="preview" style="width:550px; height:400px; border:1px solid;">

     <img src="file:///C|/Users/Administrator/workspace/study/src/main/webapp/resources/image/home/ad/20171024/8f4a78695009bef27c97e3aaacc110fc.jpg" />

이 코딩 부분인데요 밑줄친 두 부분이 문제여서요 

위에 밑줄이 db에서 받아온 데이터를 표로 만들어준거구요 그 데이터중 원하는 부분을 클릭하면 div에 그 값에 맞는 이미지를 출력시키려고 하고있습니다. 다시 살펴본 결과 경로상의 문제가 있어서 문자열을 자르고 추가해서 하면 될거 같은데요 아랫부분처럼 코딩을 해야할텐데 어떤식으로 코딩을해야 이미지를 불러올까싶어 이미지 하나만 띄워보려고 했는데 이미지가 안나와서요 이게 웹사이트에 활용 될 이미지라서 다른 pc로 사이트에 접속해도 위에 db데이터를 클릭해서 이미지를 보여줄수있게 하고있거든요.

그리고 site root는 저도 첨보는거라 드림위버에서 이미지 등록할때 site root를 누르면 file:///c|이런식으로 코딩해주더라구요..

+
ush11 님께서 7개월 전에 자바스크립트에 올린 질문

이미지 출력 질문 소스코드 추가해서 다시 올립니다..

0
답변 1 이미지 출력 질문 소스코드 추가해서 다시 올립니다.. 답변 1 (/p/javascript)
 try{ String jdbcDriver = "jdbc:mysql://ip/user?useUnicode=true&characterEncoding=utf8"; String dbUser = "id"; Stri..

 try{

String jdbcDriver = "jdbc:mysql://ip/user?

useUnicode=true&characterEncoding=utf8";

String dbUser = "id";

String dbPwd = "password";

conn = DriverManager.getConnection(jdbcDriver, dbUser, dbPwd);

pstmt = conn.prepareStatement("select * from banner");

rs = pstmt.executeQuery();

while(rs.next()){

%>

<tr>

<td><%= rs.getString("media") %></td>

<td><%= rs.getString("file_type") %></td>

<td><%= rs.getString("file_path") %></td>

<td><a href =  "<%= rs.getString("file_path")+rs.getString("file_name")%> target="preview";/>

<%= rs.getString("file_name") %></a></td>

<td><a href = "<%= rs.getString("url") %>"onClick = "window.open(this.href,'','width = 550, height = 400');return false;" > <%= rs.getString("url") %></a></td>

<td><%= rs.getString("register_datetime") %></td>

</tr>

<%

}

}catch(SQLException se){

se.printStackTrace();

}finally{

if(rs != null)rs.close();

if(pstmt != null) pstmt.close();

if(conn != null) conn.close();

}

%>

</tbody>

</table>

</div></td>

<td>&nbsp;</td>

<td><div id="preview" style="width:550px; height:400px; border:1px solid;">

     <img src="file:///C|/Users/Administrator/workspace/study/src/main/webapp/resources/image/home/ad/20171024/8f4a78695009bef27c97e3aaacc110fc.jpg" />

이 코딩 부분인데요 밑줄친 두 부분이 문제여서요 

위에 밑줄이 db에서 받아온 데이터를 표로 만들어준거구요 그 데이터중 원하는 부분을 클릭하면 div에 그 값에 맞는 이미지를 출력시키려고 하고있습니다. 다시 살펴본 결과 경로상의 문제가 있어서 문자열을 자르고 추가해서 하면 될거 같은데요 아랫부분처럼 코딩을 해야할텐데 어떤식으로 코딩을해야 이미지를 불러올까싶어 이미지 하나만 띄워보려고 했는데 이미지가 안나와서요 이게 웹사이트에 활용 될 이미지라서 다른 pc로 사이트에 접속해도 위에 db데이터를 클릭해서 이미지를 보여줄수있게 하고있거든요.

그리고 site root는 저도 첨보는거라 드림위버에서 이미지 등록할때 site root를 누르면 file:///c|이런식으로 코딩해주더라구요..

+
ush11 님께서 7개월 전에 자바스크립트에 올린 질문

1개의 답변

0
[답변]이미지 출력 질문 소스코드 추가해서 다시 올립니다.. 6 (/p/javascript)
이미지 이름을 클릭했을 때 이미지를 보여주는 부분이 안되시는 것 같습니다.올려주신 소스 중에 아래 부분을

이미지 이름을 클릭했을 때 이미지를 보여주는 부분이 안되시는 것 같습니다.

올려주신 소스 중에 아래 부분을

<a href =  "<%= rs.getString("file_path")+rs.getString("file_name")%> target="preview";/>
<%= rs.getString("file_name") %></a>

아래와 같이 수정하신 후 실행해보시기 바랍니다.

<a rel="<%=rs.getString("file_path")+rs.getString("file_name")%>"
onclick="document.getElementById('preview').innerHTML='<img src='+this.rel+'>'" style="cursor: pointer"><%=rs.getString("file_name")%></a>

소스 입력하기가 복잡해서 오타가 날 것 같으시면 위 코드를 복사해다가 붙여넣기 하셔도 됩니다.

해보시고 안되시면 또 알려주시기 바랍니다.


사탕 주기
+
kimho 님께서 7개월 전에 자바스크립트에 올린 글
0
 
ush11 7개월 전
정말 감사합니다
그런데 제가 rs.getString()으로 불러오는 path가 /home/myadmin/exam902/ad/20171023/이여서요
자바스크립트에서 사이트에 이미지를 뿌리려면 web content란 곳에 이미지를 저장해야한다고해서 보니 web app이 있어서 그쪽에 넣고 경로가 바뀌었으니
<script>

var str = <%= rs.getString("file_path") %>
var res = str.substring(13)
</script>
이런식으로 문자열을 자르고
<a rel="file:///C|/Users/Administrator/workspace/study/src/main/webapp/resources/image+res+<%=rs.getString("file_name")%>"
onClick="document.getElementById('preview').innerHTML='<img src='+this.rel+'>'" style="cursor: pointer">
<%= rs.getString("file_name") %></a></td>
이런식으로 했는데 이미지는 안나오네요...
0
 
kimho 7개월 전
자바스크립트에서 선언한 res 변수를 바로 a 태그 안에서 쓸 수는 없습니다.
+res+ 라고 쓰신 부분은 빼셔야 할 것 같습니다.
그리고 파일 경로는 "file:///C:/<path>..." 이런 식으로 쓰셔야합니다.
C 드라이브 경로 부분이 잘못 적혀있는 것 같습니다.
코드가 아무리 정상이어도 경로가 잘못되면 출력되지 않으니 경로를 다시 한번 잘 확인 부탁드립니다.
0
 
ush11 7개월 전
매번 감사합니다 그럼 정규식으로도 원하는 문자열을 a태그안에 넣을순 없는건가요?
0
 
kimho 7개월 전
네. 정규식 뿐만 아니라 자바스크립트를 HTML 태그에 직접 쓸 수는 없습니다.
+ 연산자나 res 변수나 모두 자바스크립트에서 사용하는 것들이기 때문에 HTML 태그 안에 직접 넣을 수는 없습니다.
자바스크립트는 <script> 태그 안에서만 쓸 수 있다고 보시면 됩니다.

즉, 자바스크립트로 HTML 문서를 변화시키려고 한다고 할지라도 자바스크립트는 <script> 태그 안에서만 동작합니다.
(혹은 HTML 태그의 onClick, onLoad 등의 이벤트에서 자바스크립트를 사용합니다)
0
 
ush11 7개월 전
그렇군요... 그럼 저런방식에 문자열을 수정한 문자열(?)은 사용할수 없는건가요?
rs.getString("file_path")의 문자열을 수정해서 kimho님 코드안에 넣을려는데 방법을 잘 모르겠어서요 구글찾아보고 하는데 이런 예제가 안보여서...
계속 쓰다보니 너무 kimho님을 귀찮게 하는것 같네여... 죄송합니다..
0
 
kimho 7개월 전
rs.getString()은 자바스크립트가 아니라 자바 JSP 이므로 자바 코드를 이용하시면 됩니다. 즉, <%=rs.getString("file_name")%>이라고 쓰신 부분을 <%=rs.getString("file_name").substring(13)%> 으로 수정하시면 되겠습니다.
조회수 242
답글 1
URL