<%@page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*"%> <%@ include file="Connections/library.jsp" %> <% // *** Edit Operations: declare variables // set the form action variable String MM_editAction = request.getRequestURI(); if (request.getQueryString() != null && request.getQueryString().length() > 0) { MM_editAction += "?" + request.getQueryString(); } // connection information String MM_editDriver = null, MM_editConnection = null, MM_editUserName = null, MM_editPassword = null; // redirect information String MM_editRedirectUrl = null; // query string to execute StringBuffer MM_editQuery = null; // boolean to abort record edit boolean MM_abortEdit = false; // table information String MM_editTable = null, MM_editColumn = null, MM_recordId = null; // form field information String[] MM_fields = null, MM_columns = null; %> <% // *** Insert Record: set variables if (request.getParameter("MM_insert") != null && request.getParameter("MM_insert").toString().equals("form1")) { MM_editDriver = MM_library_DRIVER; MM_editConnection = MM_library_STRING; MM_editUserName = MM_library_USERNAME; MM_editPassword = MM_library_PASSWORD; MM_editTable = "livres"; MM_editRedirectUrl = ""; String MM_fieldsStr = "document_id|value|noinventaire|value|nombreexemplaires|value|noisbn|value|typedocument|value|titre|value|titreexposition|value|lieupublication|value|datepublication|value|nbpages|value|nbpagesillustr|value|nbpagesnb|value|nbpagescoul|value|thematique|value|modeacquisition|value|pageslibrary|value|resume|value|date_fiche|value|langue|value"; String MM_columnsStr = "document_id|none,none,NULL|noinventaire|',none,''|nombreexemplaires|none,none,NULL|noisbn|',none,''|typedocument|',none,''|titre|',none,''|titreexposition|',none,''|lieupublication|',none,''|datepublication|none,none,NULL|nbpages|none,none,NULL|nbpagesillustr|none,none,NULL|nbpagesnb|none,none,NULL|nbpagescoul|none,none,NULL|thematique|',none,''|modeacquisition|',none,''|pageslibrary|',none,''|resume|',none,''|date_fiche|none,none,NULL|lang|',none,''"; // create the MM_fields and MM_columns arrays java.util.StringTokenizer tokens = new java.util.StringTokenizer(MM_fieldsStr,"|"); MM_fields = new String[tokens.countTokens()]; for (int i=0; tokens.hasMoreTokens(); i++) MM_fields[i] = tokens.nextToken(); tokens = new java.util.StringTokenizer(MM_columnsStr,"|"); MM_columns = new String[tokens.countTokens()]; for (int i=0; tokens.hasMoreTokens(); i++) MM_columns[i] = tokens.nextToken(); // set the form values for (int i=0; i+1 < MM_fields.length; i+=2) { MM_fields[i+1] = ((request.getParameter(MM_fields[i])!=null)?(String)request.getParameter(MM_fields[i]):""); } // append the query string to the redirect URL if (MM_editRedirectUrl.length() != 0 && request.getQueryString() != null) { MM_editRedirectUrl += ((MM_editRedirectUrl.indexOf('?') == -1)?"?":"&") + request.getQueryString(); } } %> <% // *** Insert Record: construct a sql insert statement and execute it if (request.getParameter("MM_insert") != null) { // create the insert sql statement StringBuffer MM_tableValues = new StringBuffer(), MM_dbValues = new StringBuffer(); for (int i=0; i+1 < MM_fields.length; i+=2) { String formVal = MM_fields[i+1]; String elem; java.util.StringTokenizer tokens = new java.util.StringTokenizer(MM_columns[i+1],","); String delim = ((elem = (String)tokens.nextToken()) != null && elem.compareTo("none")!=0)?elem:""; String altVal = ((elem = (String)tokens.nextToken()) != null && elem.compareTo("none")!=0)?elem:""; String emptyVal = ((elem = (String)tokens.nextToken()) != null && elem.compareTo("none")!=0)?elem:""; if (formVal.length() == 0) { formVal = emptyVal; } else { if (altVal.length() != 0) { formVal = altVal; } else if (delim.compareTo("'") == 0) { // escape quotes StringBuffer escQuotes = new StringBuffer(formVal); for (int j=0; j < escQuotes.length(); j++) if (escQuotes.charAt(j) == '\'') escQuotes.insert(j++,'\''); formVal = "'" + escQuotes + "'"; } else { formVal = delim + formVal + delim; } } MM_tableValues.append((i!=0)?",":"").append(MM_columns[i]); MM_dbValues.append((i!=0)?",":"").append(formVal); } MM_editQuery = new StringBuffer("insert into " + MM_editTable); MM_editQuery.append(" (").append(MM_tableValues.toString()).append(") values ("); MM_editQuery.append(MM_dbValues.toString()).append(")"); if (!MM_abortEdit) { // finish the sql and execute it Driver MM_driver = (Driver)Class.forName(MM_editDriver).newInstance(); Connection MM_connection = DriverManager.getConnection(MM_editConnection,MM_editUserName,MM_editPassword); PreparedStatement MM_editStatement = MM_connection.prepareStatement(MM_editQuery.toString()); MM_editStatement.executeUpdate(); MM_connection.close(); // redirect with URL parameters if (MM_editRedirectUrl.length() != 0) { response.sendRedirect(response.encodeRedirectURL(MM_editRedirectUrl)); } } } %> <% Driver Driverlivres = (Driver)Class.forName(MM_library_DRIVER).newInstance(); Connection Connlivres = DriverManager.getConnection(MM_library_STRING,MM_library_USERNAME,MM_library_PASSWORD); PreparedStatement Statementlivres = Connlivres.prepareStatement("SELECT * FROM livres"); ResultSet livres = Statementlivres.executeQuery(); boolean livres_isEmpty = !livres.next(); boolean livres_hasData = !livres_isEmpty; Object livres_data; int livres_numRows = 0; %> <html> <head> <title>Creer doc</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="lmstk.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <table width="100%" border="0"> <tr> <td bgcolor="#4A494A"><img src="images/lmstk.png" width="760" height="82"></td> </tr> <tr> <td><h2 align="left"><font color="#999999"> Saisie d'un document</font></h2> <form method="POST" action="<%=MM_editAction%>" name="form1"> <table align="center" width="660"> <tr> <td nowrap align="right" valign="baseline"></td> <td valign="baseline" colspan="3"> <input type="hidden" name="document_id" value="nextval('document_serial')" size="32"> </td> <td valign="baseline"> <div align="right"></div></td> <td valign="baseline" colspan="4"> </td> </tr> <tr> <td nowrap align="right" valign="baseline">No inventaire :</td> <td valign="baseline" colspan="3"> <input type="text" name="noinventaire" value="" size="32"> </td> <td valign="baseline"> <div align="right">Nombre d'exemplaires :</div></td> <td valign="baseline" colspan="4"> <input type="text" name="nombreexemplaires" value="" size="4"> </td> </tr> <tr> <td nowrap align="right" valign="baseline">ISBN :</td> <td valign="baseline" colspan="3"> <input type="text" name="noisbn" value="" size="32"> </td> <td valign="baseline"> <div align="right">Type document :</div></td> <td valign="baseline" colspan="4"> <select name="typedocument"> <option value="Catalogue">Catalogue</option> <option value="Monographie">Monographie</option> <option value="Revue">Revue</option> </select> </td> </tr> <tr> <td nowrap align="right" valign="baseline">Titre :</td> <td valign="baseline" colspan="3"> <input type="text" name="titre" value="" size="32"> </td> <td valign="baseline"> <div align="right">Ss Titre / exposition :</div></td> <td valign="baseline" colspan="4"> <input type="text" name="titreexposition" value="" size="32"> </td> </tr> <tr> <td nowrap align="right" valign="baseline">Lieu publication :</td> <td valign="baseline" colspan="3"> <input type="text" name="lieupublication" value="" size="32"> </td> <td valign="baseline"> <div align="right">Date publication :</div></td> <td valign="baseline" colspan="4"> <input type="text" name="datepublication" value="" size="6" maxlength="4"> </td> </tr> <tr> <td nowrap align="right" valign="baseline">Pages :</td> <td valign="baseline" colspan="3"> <input type="text" name="nbpages" value="" size="6"> </td> <td valign="baseline"> <div align="right">Pages illustrées </div></td> <td valign="baseline" colspan="4"> <input type="text" name="nbpagesillustr" value="" size="6"> </td> </tr> <tr> <td nowrap align="right" valign="baseline">N&B :</td> <td valign="baseline" colspan="3"> <input type="text" name="nbpagesnb" value="" size="6"> </td> <td valign="baseline"> <div align="right">Couleur :</div></td> <td valign="baseline" colspan="4"> <input type="text" name="nbpagescoul" value="" size="6"> </td> </tr> <tr> <td nowrap align="left" colspan="4">Thématique : <br> <textarea name="thematique" cols="50" wrap="VIRTUAL" rows="5"></textarea> </td> <td colspan="5" valign="top"> <div align="left">Acquisition :<br> </div> <div align="left"> <select name="modeacquisition"> <option value="Echange">Echange</option> <option value="Achat">Achat</option> </select> </div></td> </tr> <tr align="left"> <td nowrap colspan="4">Pages library : <br> <textarea name="pageslibrary" cols="50" rows="5" wrap="VIRTUAL"></textarea> </td> <td colspan="5" valign="top"> <div align="left">Résumé : <br> </div> <div align="left"> <textarea name="resume" cols="50" rows="5" wrap="VIRTUAL"></textarea> </div></td> </tr> <tr> <td nowrap align="right" valign="baseline">Date de saisie :</td> <td valign="baseline" colspan="3">Automatique <input type="hidden" name="date_fiche" value="now()" size="32"> </td> <td valign="baseline"> <div align="right">Langue :</div></td> <td valign="baseline" colspan="4"> <input type="text" name="langue" size="12" maxlength="12"> </td> </tr> <tr> <td nowrap align="right" valign="baseline"> </td> <td valign="baseline" colspan="3"> <input name="submit" type="submit" value="Inserer Fiche"> </td> <td valign="baseline"> <div align="right"></div></td> <td valign="baseline" colspan="4"> </td> </tr> </table> <input type="hidden" name="MM_insert" value="form1"> </form> </td> </tr> <tr> <td> </td> </tr> </table> <h2 align="left"><font color="#999999"><br> </font></h2> </body> </html> <% livres.close(); Connlivres.close(); %>