<%@page contentType="text/html"%> <%@page import ="java.sql.ResultSet,java.sql.Connection,java.sql.DriverManager,java.sql.Statement" %> <%@page import ="java.util.GregorianCalendar" %> <%@page import ="com.mysql.jdbc.*"%> <%@page import ="java.io.*"%> <%@page import ="java.net.InetAddress"%> <%@page import ="java.net.URLConnection"%> <%@page import ="java.net.HttpURLConnection"%> <%@page import ="java.net.Socket"%> <%@page import ="java.net.SocketImpl"%> <% /** * Class name: CounterStatistic * Discription: View hits and page view statistic. All information will read from the database * Version: V1.00 2003 G * Copyright by: Frank Schultz * Autor: Frank Schultz */ %> <%! // #################### Declare function and methods BEGIN ##################### Connection myConnection; Statement myStatement; ResultSet myResultSet; String sqlStatement = ""; String tmpMessage = ""; int pageViewToday = 0; // page views today with ip lock int pageViews = 0; // all page views with ip lock int hits = 0; // all clicks without ip lock /** * This method get page views from today */ public void getPageViewsTodayCounter() { try { myStatement = myConnection.createStatement(); String sqlStatement = "SELECT ipAdress FROM vtl_online_de_User " + " WHERE " + "status=" + " 'C' "; myResultSet = myStatement.executeQuery(sqlStatement); while (myResultSet.next()) { pageViewToday++; } // while } // try catch (Exception ex) { //System.err.println("" +ex); sendErrorEmail(ex.toString()); } // catch } // getPageViewsTodayCounter /** * This method get all page views */ public void getPageViewsCounter() { try { myStatement = myConnection.createStatement(); String sqlStatement = "SELECT counter FROM vtl_online_de_PageViewCounter " + " WHERE " + "counter!=" + "0"; myResultSet = myStatement.executeQuery(sqlStatement); myResultSet.next(); pageViews = myResultSet.getInt("counter"); } // try catch (Exception ex) { //System.err.println("" +ex); sendErrorEmail("getPageViewsCounter " +ex.toString()); } // catch } // getPageViewsCounter /** * This method get all page hits */ public void getHitCounter() { try { myStatement = myConnection.createStatement(); String sqlStatement = "SELECT counter FROM vtl_online_de_Hitscounter " + " WHERE " + "counter!=" + "0"; myResultSet = myStatement.executeQuery(sqlStatement); myResultSet.next(); hits = myResultSet.getInt("counter"); } // try catch (Exception ex) { //System.err.println("" +ex); sendErrorEmail("getHitCounter " +ex.toString()); } // catch } // getHitCounter // ############################################################################ /** * This method send an error eMail to the Administrator with error string or message */ void sendErrorEmail(String parmMessage) { GregorianCalendar myDate = new GregorianCalendar(); tmpMessage = parmMessage + " " + myDate.getTime(); try { Socket mySocket = new Socket ("www.verschwiegenes-tierleid-online.de",25); // Socket-Verbindung zum smtp-Server, Port 25 PrintWriter out = new PrintWriter(mySocket.getOutputStream()); BufferedReader in = new BufferedReader(new InputStreamReader(mySocket.getInputStream())); String hostname = InetAddress.getLocalHost().getHostName(); System.err.println("HostName.:" + hostname); out.println("HELO "+ hostname); // Anmelden beim smtp-Server out.flush(); in.readLine(); out.println("MAIL FROM: "+ "Questions@verschwiegenes-tierleid-online.de"); // Absender übermitteln out.flush(); in.readLine(); out.println("RCPT TO: Webmaster@SINF.de"); // Empfänger übermitteln out.flush(); in.readLine(); out.println("DATA"); // Server bereitstellen um Nachricht zu übermitteln out.flush(); in.readLine(); out.println("subject:Automatic mail"); // Betreff der Email out.flush(); out.println("Jsp-Message" ); // Emailnachricht out.println("We´ve got a new message." ); // Emailnachricht out.println(tmpMessage); // Emailnachricht out.flush(); out.println(); // Erkennungszeichen für Server, dass Nachrichtenübermittlung beendet ist out.println("."); // Erkennungszeichen für Server, dass Nachrichtenübermittlung beendet ist out.flush(); in.readLine(); out.println("QUIT"); // Erkennungszeichen für Server, dass Nachrichtenübermittlung beendet ist out.flush(); in.readLine(); mySocket.close(); // Socket-Verbindung schliessen } // try catch (IOException e) { System.err.println("Fehler.: Email wurde vieleicht nicht gesendet! " + e); } // catch }// sendErrorEmail // ############################################################################ /** This method get a connection and create a statement * If no error the return true else false */ public void connectDb () { try { myConnection = DriverManager.getConnection("jdbc:mysql://localhost/web101_1?user=web101_1&password=m6YRD50D"); //myConnection = DriverManager.getConnection("jdbc:mysql://localhost/test?user=&password="); //myConnection = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost", "sa", ""); myStatement = myConnection.createStatement(); } // try catch (Exception ex) { sendErrorEmail("connectDb " + ex.toString()); } // catch } // connectDb /** * This method close the Db connection and gives the connection free */ void closeDbConnection() { try { myResultSet.close(); } // try catch (Exception ex) { } // catch try { myStatement.close(); } // try catch (Exception ex) { } // catch try { myConnection.close(); } // try catch (Exception ex) { } // catch } // closeDbConnection // #################### Declare function and methods END ####################### %> <% //######################### Begin program start ########################## try { // Class.forName("org.hsqldb.jdbcDriver"); // load the data base driver HSql Class.forName("com.mysql.jdbc.Driver"); // load the data base driver mySql } // try catch (Exception ex) { sendErrorEmail("BEGIN " + ex.toString()); } // catch connectDb (); getPageViewsTodayCounter(); getPageViewsCounter(); getHitCounter(); closeDbConnection(); %> JSP Page <%-- --%> <%-- --%> Verschwiegenes Tierleid Statistik

 

 

 

Sehr geehrte Besucherin, sehr geehrter Besucher!

 

Diese Website ist seit dem 2. August 2003 ONLINE verfügbar. Hier finden Sie einen kurzen Überblick über die aktuellen Besucherzahlen.

 

Aufrufe insgesamt: <%=hits%>

 

Aufrufe (IP-Lock): <%=pageViews%>

 

Aufrufe (IP-Lock) heute: <%=pageViewToday%>

 

 

 

Vielen Dank für Ihr Interesse!

 

 

 

 

MENÜ






CounterStatistic.Jsp c(03) by Frank Schultz

 

<% pageViewToday = 0; // page views today with ip lock pageViews = 0; // all page views with ip lock hits = 0; // all clicks without ip lock %>