Laboratorio di sistemi SELECT e checkbox Jsp [Java]



Похожие документы
Laboratorio di Sistemi Autenticazione utente mediante MySQL Jsp [Java]

Laboratorio di Sistemi CRUD con MySQL JSP (Java)

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Autenticazione utente mediante MySQL Jsp [Java]

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet

Laboratorio di sistemi Web Application in Php5 Php

Laboratorio di sistemi Prima Web Application JSP [Java]

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

Laboratorio di Sistemi Prototipo applicazione Biblioteca Jsp [Java]

Le JavaServer Pages - Lezione 6 L accesso ai Database

Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL)

<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>jsp Page</title> </head> <body>

MySQL Database Management System

RELAZIONE TECNICA SUL SITO DELLA PALESTRA. Anno scolastico Alunno: Davide martinicca. Pagina 1

Laboratorio di Sistemi Fondamenti di JSTL (parte 2) Java (JSTL)

GESTIONE DI MDB in WEB

LEGGERE E VISUALIZZARE I DATI DI UNA TABELLA IN UNA PAGINA WEB

Caricamento della classe driver. Apertura della connessione. DriverManager.getConnection() Creazione di uno statement

JDBC versione base. Le classi/interfacce principali di JDBC

Le JavaServer Pages - Lezione 7 I JavaBean

Laboratorio di sistemi MVC versione 2 Jsp (NetBeans)

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

JDBC. A. Bechini Accesso a DataD con Java

PHP e MySQL. Scripting server-side per accesso a DB MySQL

Liberamente adattato da Java dai fondamenti alla programmazione avanzata JS2E versione 1.5 di Karsten Samaschke, Apogeo editrice

Interazione con l utente : i moduli.

Esercitazione su JDBC

Laboratorio di Informatica. Lezione 12: Altre nozioni html

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE

JDBC di base. Le classi/interfacce principali di JDBC

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

Sicurezza Informatica: Tecniche di SQL INJECTION

Data Base in Internet

APPUNTI DI PHP : V INFORMATICA SEZIONE G

Laboratorio di reti II: Gestione di database lato server

Eprogram ITIS V anno Unità 6 - PHP e MySQL

Dott.ssa Adriana Pietramala

PHP: Professional Hypertext Preprocessor

PHP e MySQL. Guida scaricata da

ACTIVE SERVICE PAGES E DATABASE: tecnologia ADO

ACTIVE SERVICE PAGES E DATABASE: tecnologia ADO

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.

Pagine Asp. Pagine Asp

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Guida a PHP. Primi esempi

bool mysql_select_db([string database_name [,resource link_identifier]]) Connessione ad un server MySQL vuole conettere

Utilizzare PHP 5. Le variabili GET e POST

MySQL Database Management System

Applicazione ASP di esempio

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7

Esercitazione sulle libpq - libreria C per PostgreSQL

Come trattare il risultato di un comando SQL (relazioni) che

Introduzione JDBC interfaccia java.sql driver caricare i driver

User Tools: DataBase Manager

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente!

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet:

Accesso Web a Data Base

BASI DI DATI Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

Accesso a basi di dati con ASP. Algoritmo per visualizzare un DB

JDBC per l accesso Java a DB. Tito Flagella tito@link.it

<?php include './include/page.php';

ISI s.r.l. Corso di Access 05 CREARE UN ELENCO MAILING ED INVIARE MESSAGGI DI POSTA ELETTRONICA Pag. 1/6

Introduzione. 8- Programmazione di una base di dati attraverso JDBC ESEMPIO

PROVA FINALE Ingegneria del software

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Esportare dati da Excel

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

A. Veneziani - Classe V Abacus - Elementi di elaborazione Web con supporto ai DB basati su ASP e Access

Esercitazione PAM. (Php Apache MySQL)

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008

Java: la libreria delle classi

Il linguaggio HTML - Parte 3

LEGGERE E VISUALIZZARE I DATI FILTRATI E CALCOLATI DI UNA TABELLA IN UNA PAGINA WEB

JDBC. Dispense per il corso di Ingegneria del Web

TOP DOWN. Preparati per il compito in classe Modulo 5

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP)

Corso di Sicurezza Informatica. Sicurezza del software. Ing. Gianluca Caminiti

La tecnologia ASP.NET e i database

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Laboratorio di Sistemi Prototipo autenticazione utente Jsp [Java]

Codifica: dal diagramma a blocchi al linguaggio C++

Algoritmi di Ricerca. Esempi di programmi Java

Транскрипт:

Fig. 1 - Vogliamo visualizzare book_id, autore e titolo dalla tabella books del database shop Fig. 2 - Tabella books select_checkbox.pdf Pag. 1/5 Cozzetto

Fig. 3 - Abbiamo due record in output File index_1.jsp <%@page contenttype="text/html"%> <%@page pageencoding="utf-8"%> <%@page import="java.sql.*"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>accesso al database Shop</title> </head> <body> <h3>accesso al database Shop</h3> <form name="provafrm" action="${request.requesturi" method="post"> <p>select</p> <p><input type="checkbox" name="book_id" value="book_id" />Book_id<br/> <input type="checkbox" name="author" value="author" />Author <br/> <input type="checkbox" name="title" value="title" />Title <br/> select_checkbox.pdf Pag. 2/5 Cozzetto

<input type="checkbox" name="publisher" value="publisher" />Publisher <br/></p> <p>where <textarea name="condtxt" cols="30" rows="5"></textarea> <p><input type="submit" name="inviabtn" value="invia"/></p> </form> <% // se l'utente ha premuto il tasto inviabtn if (request.getparameter("inviabtn")!=null) { // prepariamo la stringa s con l'elenco // dei campi selezionati interattivamente // dall'utente String s=""; // aggiungo alla fine della stringa s una virgola if (request.getparameter("book_id")!=null) { s=s+request.getparameter("book_id")+","; // analogamente per il campo author if (request.getparameter("author")!=null) { s=s+request.getparameter("author")+","; // analogamente per il campo title if (request.getparameter("title")!=null) { s=s+request.getparameter("title")+","; // il campo publisher è l'ultimo, quindi non aggiungiamo // alcun carattere if (request.getparameter("publisher")!=null) { s=s+request.getparameter("publisher"); // togliamo la virgola aggiunta come ultimo carattere if (!s.equals("")) { if (s.charat(s.length()-1)==',') { s=s.substring(0,s.length()-1); else { // se l'utente non ha selezionato nessun campo // assumiamo s="*" per poter effettuare // una select su tutti i campi s="*"; // fine if // leggiamo la condizione inserita dall'utente String condstr = request.getparameter("condtxt"); select_checkbox.pdf Pag. 3/5 Cozzetto

// se l'utente non ha inserito nulla, vogliamo // che la condizione sia sempre 'true' if (condstr.equals("")) condstr="1"; // prepariamo la SELECT String sql="select "+s+" FROM books WHERE "+condstr; // la visualizziamo per poterla controllare out.println("<p>"+sql+"</p>"); Connection conn = null; Statement st = null; Class.forName("com.mysql.jdbc.Driver"); catch(classnotfoundexception e) { out.println("problemi nel caricamento dei driver"); // fine try-catch conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/shop? user=root&password=coz123"); catch(sqlexception e) { out.println("problemi nello stabilire la connessione al database"); // fine try-catch // usiamo le due costanti indicate di seguito per poter contare il numero di record del ResultSet st = conn.createstatement(resultset.type_scroll_sensitive, ResultSet.CONCUR_READ_ONLY); // eseguo la query preparata precedentemente ResultSet rs = st.executequery(sql); // ci posizioniamo sull'ultimo record rs.last(); // mi faccio dare la posizione che è anche il num. di record del ResultSet int rowcount = rs.getrow(); if (rowcount==0) { out.println("la query non restituisce risultati"); // sposto il cursore prima del primo record rs.beforefirst(); select_checkbox.pdf Pag. 4/5 Cozzetto

// prepariamo il ResultSetMetaData ResultSetMetaData rsmd = rs.getmetadata(); // troviamo il numero di colonne int numcolonne = rsmd.getcolumncount(); out.println("<table border='1'><tr>"); // prepariamo i nomi delle colonne for (int i=0; i<numcolonne; i++) { out.println("<td>"+rsmd.getcolumnname(i+1)+"</td>"); out.println("</tr><tr>"); // visualizziamo i valori delle colonne while (rs.next()) { for (int i=0; i<numcolonne; i++) { out.println("<td>"+rs.getobject(i+1)+"</td>"); out.println("</tr>"); out.println("</table>"); out.println("<br/>la query restituisce "+rowcount+" record"); rs.close(); catch(sqlexception e) { out.println("errore nell'esecuzione della query"); // fine try-catch st.close(); conn.close(); catch(sqlexception e) { out.println("impossibile effettuare la chiusura della connessione"); // fine try-catch // fine if %> </body> </html> select_checkbox.pdf Pag. 5/5 Cozzetto