我在mysql数据库里建个表dj_info,里面有个值b我赋予它0
我想在页面做个程序实现每次访问页面时数字能加1 帮帮谢谢了!~
<%
ResultSet rs = null;
Connection conn = null;
conn = Border.getConn() ;
rs = Border.executeSQL("select b from dj_info ");
int a;
a=rs.getString("b")+1;
String a=request.getParameter("a");
a= new String(a.getBytes("ISO8859-1"),"gb2312");
Connection conn = null;
conn = Border.getConn() ;
Statement stmt = conn.createStatement();
stmt.executeUpdate("update dj_info set b='"+a+"'");
%>
<%=rs.getString("b")%>
总错!~求求大家帮忙啊!~
我想在页面做个程序实现每次访问页面时数字能加1 帮帮谢谢了!~
<%
ResultSet rs = null;
Connection conn = null;
conn = Border.getConn() ;
rs = Border.executeSQL("select b from dj_info ");
int a;
a=rs.getString("b")+1;
String a=request.getParameter("a");
a= new String(a.getBytes("ISO8859-1"),"gb2312");
Connection conn = null;
conn = Border.getConn() ;
Statement stmt = conn.createStatement();
stmt.executeUpdate("update dj_info set b='"+a+"'");
%>
<%=rs.getString("b")%>
总错!~求求大家帮忙啊!~
String countFile="D:/tomcat/webapps/ROOT/count.txt";
BufferedReader file=new BufferedReader(new FileReader(countFile));
String readStr=null;
int writeStr=1;
try
{
readStr=file.readLine();
}
catch(IOException e)
{
System.out.println("读取数据错误");
}
if(readStr==null) readStr="0";
else
{
writeStr=Integer.parseInt(readStr)+1;
}
try
{
PrintWriter pw1=new PrintWriter(new FileOutputStream(countFile));
pw1.println(writeStr);
pw1.close();
}
catch(IOException e)
{
out.println(e.getMessage());
}
%>
<div align="left">
本页面被访问<font color="#FF0000" ><b>
<%=readStr%></b></font>次!
</div>
ResultSet rs = null;
Connection conn = null;
conn = Border.getConn() ;
rs = Border.executeSQL("select b from dj_info ");
int hits;//修改一下变量名
hits=rs.getString("b")+1;
String name=request.getParameter("a");//猜测,这个地方应该是用户名字段
name= new String(a.getBytes("ISO8859-1"),"gb2312");
Statement stmt = conn.createStatement();
stmt.executeUpdate("update dj_info set b='"+hits+"' while name='"+name+"'");
//需要有while子句进行匹配。字符串匹配的代码可能有点问题,找找SQL语句说明看看吧。
%>
<%
rs = Border.executeSQL("select b from dj_info ");//需要重新获取
out.print(rs.getString("b"));
%>下面所说的文件的方式用于单独的一个页面计数器,自存储一个数值纪录
<%@ page import="javax.servlet.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.servlet.http.*" %>
<HTML><HEAD><TITLE>JSP Form Processing Page(Manually Programming)</TITLE></HEAD>
<body>
<%
String userName="";
String userComment="";
Connection c;
Statement s=null;
ResultSetMetaData resultMetaData;
try
{
String dbUrl = "jdbc:mysql://127.0.0.1/mydb1";
String user = "";
String password = "";
Class.forName("com.mysql.jdbc.Driver");
c = DriverManager.getConnection(dbUrl, user, password);
s = c.createStatement();
Enumeration flds = request.getParameterNames();
String field= (String)flds.nextElement();
userComment= request.getParameter(field);
field= (String)flds.nextElement();
userName= request.getParameter(field);
PreparedStatement prep = c.prepareStatement(
"INSERT INTO Names VALUES (?, ?)");
prep.setString (1, userName);
prep.setString (2, userComment);
prep.executeUpdate ();
}
catch(Exception e)
{
e.printStackTrace();
}
%>
<%
try
{
ResultSet r = s.executeQuery("SELECT * FROM Names" );//
resultMetaData=r.getMetaData();
%>
<h2> Table Name: <%= resultMetaData.getTableName(1) %></h2>
<table border = 1>
<tr>
<%
for (int i = 1; i <= resultMetaData.getColumnCount() ; i++)
{
%>
<th><%= resultMetaData .getColumnName(i)%></th>
<%
}%>
</tr>
<%
while(r.next())
{
%>
<tr>
<%
for (int i = 1; i <= resultMetaData.getColumnCount() ; i++)
{
%>
<td> <%=r.getString(i) %></td> <%
}
%>
</tr>
<%
}
%>
<%
}
catch(Exception e)
{
e.printStackTrace();
}
%>
</table></body></html>