首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mid不能解析为变量

mid不能解析为变量
EN

Stack Overflow用户
提问于 2012-04-17 23:49:03
回答 1查看 794关注 0票数 0

所以我再一次被卡住了,这是我的.JSP页面代码,我试图点击一个艺术家的名字,它会显示他们出现的电影。我在第一个查询中一切正常,但是当我到达queryMovies时,我试图将电影的标题重新引用到电影ID,这将把我带到另一个页面,我得到了错误mid无法被解析为变量。我做错了什么?谢谢。

代码语言:javascript
复制
    <html>
<head>
<%@ include file="header.htm" %>
<%@ page import="java.sql.*" %>
<%
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    String cs="jdbc:mysql://localhost:3306/hunters?user=root&password=password";
    Connection cxn = DriverManager.getConnection(cs);
    Statement stm = cxn.createStatement();

int oscar = 0;

String fname = request.getParameter("fname");
String lname = "", dob = "", nation = "", imdb = "", url = "", newaid = "", title = "", studio = "", role = "", rlsdate = "";
String queryArtist = "SELECT * FROM artist WHERE aid = '" + request.getParameter("selectedName") + "';";

ResultSet rsArtist = stm.executeQuery(queryArtist);

    rsArtist.next();
    fname = rsArtist.getString("fname"); 
    lname = rsArtist.getString("lname");
    dob = rsArtist.getString("dob").substring(0,4);
    nation = rsArtist.getString("nation");
    imdb = rsArtist.getString("imdb");
    url = rsArtist.getString("url");
%>
    <title><%= fname %> <%= lname %></title>

<h2><FONT COLOR="B22222"><%= fname%> <%= lname%></FONT></h2>

<p>Born in: <%= dob%></p> 
<p>Nationality: <%= nation%></p>
<p>IMDB Bio: <a href="http://www.imdb.com/name/<%= imdb%>/"  target="_blank">http://www.imdb.com/name/<%= imdb%>/</a></p>
<%
if (url == null)
{
out.println("<br />");
}
else 
{
out.println("Website: <a href=" + url + "target=_blank>" + url + "</a><br>");
}
%>
<hr />
<h3><FONT COLOR="B22222">Filmography</FONT></h3>
<%
newaid = request.getParameter("selectedName");



String queryMovies = "SELECT * FROM artist, movies, artistmovie WHERE artistmovie.mid = movies.mid AND artist.aid = artistmovie.aid AND artist.aid = '"; 
    queryMovies += request.getParameter("selectedName") + "';";

ResultSet rsMovies = stm.executeQuery(queryMovies);

while(rsMovies.next())
{
    title = rsMovies.getString("title");
    studio = rsMovies.getString("studio");
    rlsdate = rsMovies.getString("rlsdate");
    role = rsMovies.getString("role");
    oscar = rsMovies.getInt("oscar");
    mid = rsMovies.getInt("mid");

    out.println("<tr><td>&nbsp;</td><td><a href= artistmovie.jsp?SelectedTitle=" + mid + ">" + title + " <a/></td>");
    out.println("<td>&nbsp;&nbsp;&nbsp;</td><td>(" + studio + "</a></td>"); 
    out.println("<td></td><td>" + rlsdate + ")</td>");  
    out.println("<td>&nbsp;&nbsp;</td><td>" + role + "</td></br></br>");

}
if (oscar == 0)
{
    out.println("<td>&nbsp;</td><td><br /></td>");
}
else
{
    out.println("<td>&nbsp;</td><td>Won oscar</td></tr>");
}
%>
<%@ include file="footer.htm" %>
</body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-18 00:27:50

改变

代码语言:javascript
复制
out.println("<tr><td>&nbsp;</td><td><a href= artistmovie.jsp?SelectedTitle=" + mid + ">" + title + " <a/></td>");

代码语言:javascript
复制
out.println("<tr><td>&nbsp;</td><td><a href=\"artistmovie.jsp?SelectedTitle="+ mid +"\">" + title + " <a/></td>");

应该行得通。

除了这个之外

代码语言:javascript
复制
out.println("<td>&nbsp;&nbsp;&nbsp;</td><td>(" + studio + "</a></td>"); 

在"<td>“附近结束的"<a>”标记是从哪里开始的?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10194562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档