Vai al contenuto

Caos_94

Utente
  • Numero contenuti

    29
  • Iscritto

  • Ultima visita

Su Caos_94

  • Compleanno 27/10/1994

Obiettivi di Caos_94

Explorer

Explorer (4/14)

  • First Post
  • Collaborator Raro
  • Week One Done
  • One Month Later
  • One Year In

Badge recenti

0

Reputazione Forum

  1. No, non necessariamente. La Oracle offre diversi servizi come le Servlet ( altro non sono che delle classi che lavorano sul server, e che per poter operare hanno bisogno di un contesto, un motore che si occupi del loro utilizzo) e le JSP ( Java Server Pages) Inviato dal mio Nexus 4 utilizzando Tapatalk
  2. Eccoci dunque arrivati al cuore del tutorial, ovvero come inserire un record tramite stringa SQL. L’istruzione che ci permette di inserire un record in una tabella di un database MySQL è la seguente: INSERT INTO nometabella (elenco campi) VALUES (elenco valori) Nota: Elenco campi ed elenco valori devono essere nell’ordine corrispondente. Sempre prendendo in considerazione l’esempio precedente, andiamo inserire nella tabella i valori passati dalla Form in HTML (quindi nomeUtente,cognomeUtente,classeUtente). Il nostro codice sarà nel seguente modo: /* if(isset($_POST['nomeUtente'])&&isset($_POST['cognomeUtente'])&&isset($_POST['classeUtente']) &&isset($_POST['sessoUtente'])){ $nomeUtente = $_POST['nomeUtente']; $cognomeUtente = $_POST['cognomeUtente']; $classeUtente = $_POST['classeUtente']; $sessoUtente = $_POST['sessoUtente']; $query = "INSERT INTO Utenti (Nome, Cognome, Classe, Sesso)"; $query .= "VALUES ('$nomeUtente', '$cognomeUtente', '$classeUtente', '$sessoUtente')"; } */ Andiamo a spiegarlo brevemente. Controlliamo che i valori passati con il POST abbiamo consistenza con il metodo isset e li concateniamo tutti i valori con una AND logica. Facendo un esempio: se (Mario, Rossi, 19, Maschio, non sono nulli) andiamo ad assegnare a ciascun parametro passato un nome ed Inseriamo nella tabella Utenti che ha i campi Nome,Congnome,Classe e Sesso i parametri Mario Rossi 19 Maschio. A questo punto non ci resta che eseguire la query, e faremo ciò con il comando mysql_query. Nella variabile a cui viene assegnata ritorna false nel caso in cui non sia andata a buon fine. Abbiamo quindi il seguente codice /* $esitoQuery=mysql_query($query, $connessione) if (!$esitoQuery) { echo "<br>Aggiunto!"; } else { die('Errore durante l\'inserimento:' .mysql_error()); }*/ Ultimo step, ma non meno importante sarà quello di chiudere la connessione al database con il metodo mysql_close($connessione);
  3. In questo beve post vedremo come aggiungere un record al database di Altervista(ovviamente ci sono svariate opzioni,ma per mia comodità io ho scelta questa piattaforma di Hosting). Premetto che non andrò a spiegare la logica dei database, né di come configurare un database su Altervista(la rete ha i svariati tutorial su come fare ciò) e pongo il presupposto che il lettore abbia già un account Altervista configurato e funzionante. Per aggiungere un record con dei dati provenienti da una Form (vedi il post precedente), fondamentalmente i passi da seguire sono: Connessione al Database Selezione del Database Inserimento di un record Chiusura del Database Andiamo a vedere come effettuare la connessione. Osservazione: Siccome la connessione può essere effettuata in più punti, è opportuno memorizzare in un file PHP a parte le variabili per la connessione ed includere il file dove serve. Quindi andiamo a crearci il file in questione: <?php $db_host = "http://sito.altervista.org"; $db_user = ""; $db_pass = ""; $db_nome="my_nomeUtente"; ?> Nota: I parametri di connessione come User e Pass possono essere omessi, in quanto Altervista lo consente. Nota 2: Useremo il comando include ('db_login.php'), per importare il file nei punti ove necessario. Ovviamente il file può avere un nome qualsiasi, il ho scelto db_login.php. Creato il file db_login.php andiamo a fare “il lavoro grosso” ovvero la connessione al database. Di seguito il codice: $connessione = mysql_connect($db_host,$db_user, $db_pass); if (!$connessione) { die("<h1> connessione al server fallita:".mysql_error()."</h1>"); } Il codice non fa nient’altro che eseguire una connessione al database, con il metodo mysql_connect che ha come parametri il nome del host, utente e password. Ovviamente, da bravi “programmatori”, dobbiamo gestire le eccezioni quindi andremo a controllare se la connessione è andata a buon fine, altrimenti stamperemo “Connessione al server fallito” con il codice d’errore. Per un host free come Altervista abbiamo un unico database, ma niente ci vieta di lavorare su altre piattaforme perciò se mai ci fosse la necessità, possiamo scegliere a quale DB connetterci attraverso la funzione mysql_select_db. Questa funzione ha due parametri di cui il secondo (la stringa di connessione) opzionale, se omesso viene considerata l’ultima chiamata della funzione mysql_connect. Quindi abbiamo il seguente codice: $db = mysql_select_db($db_nome , $connessione); if (!$db) { print("<h1> connessione al database fallita</h1>"); exit; }
  4. Dopo aver introdotto un po' di quelle che sono le caratteristiche base del PHP, andiamo a vedere il cuore di PHP combinato a MySQL, quest'ultimo non è nient'altro che software per database (di tipo relazionali)prodotto dall'omonima società Svedese (MySQL AB). Il codice è gratuito, open source e di proprietà esclusiva della MySQL AB, i quali profitti derivano da servizi e strumenti messi a disposizione degli utenti del loro software - strumenti e servizi non prerogativa per l'utilizzo del software stesso. L'esempio che andrò a spiegare, consisterà in DUE step ed avrà come scopo di inserire all'interno di una tabella del database dei dati(record) inseriti dall'utente attraverso una form. In questo esempio ci limiteremo a passare i valori e visualizzarli in una tabella HTML. Il primo step vedrà di fornire una form in HTML per fare in modo che l'utente possa inserire i valori desiderati. Il secondo step vedrà di passare i campi del form ad una pagina PHP chi li andrà ad inserire all'interno del database(farò una guida prossimamente, su come fare ciò)e visualizzerà i valori nella prima riga di una tabella. Cominciamo quindi a crearci la pagina HTML(5 ), che per comodità chiamerò index.html e che sarà strutturata così: <!DOCTYPE html> <HTML lang="it"> <HEAD> <meta charset="utf-8"> <TITLE>Index</TITLE> </HEAD> <BODY> <FORM ACTION = "ricevi.php" METHOD=post> <label for="nome"> Nome:</label><br><input type="text" id="nome" NAME="nomeUtente"><BR> <label for="cognome"> Cognome:</label><BR><input type="text" id="cognome" name="cognomeUtente"><BR> <label for="classe"> Classe:</label><BR><input type="text" id="classe" name="classeUtente"><BR> <label for="maschio">Maschio </label><input id="maschio" name="sessoUtente" type="Radio" value=m> <label for="femmina">Femmina </label><input id="femmina" name="sessoUtente" type="Radio" value=f> <input type="submit" value="Invia"> </FORM> </BODY> </HTML> Come chiaramente vedete(??) la pagina avrà 2 campi di testo, dove andiamo ad inserire il nome e il cognome, avrà anche radio button che consentono di effettuare una scelta esclusiva [in questo caso quindi una scelta esclude l’altra. Per ottenere questo effetto i campi devono avere lo stesso nome e differente valore.] e per finire un Submit che raccoglierà tutti i valori ed invierà i campi alla pagina ricevi.php che andiamo a creare. <?php $codice_1="<table border=\"1\">"; $codice_2="<tr>"; $codice_3="<td>".$_POST["nomeUtente"]."</td>"; $codice_4="<td>".$_POST["cognomeUtente"]."</td>"; $codice_5="<td>".$_POST["classeUtente"]."</td>"; if ($_POST["sessoUtente"]=="m") {$sesso="Maschio";} else {$sesso="Femmina";} $codice_6="<td>".$sesso."</td>"; $codice_7="</tr></table>"; $codice_html=$codice_1.$codice_2.$codice_3.$codice_4.$codice_5.$codice_6.$codice_7; echo $codice_html; ?> Introduciamo le variabili, che in PHP iniziano obbligatoriamente con il simbolo del $ e vengono definite nel seguente modo $nomevariabile = valore; Variabili d’ambiente PHP mette a disposizione una grande varietà di variabili predefinite dette d’ambiente : sono definite come array associativi il loro uso dipende dal server sul quale viene eseguito lo script sono chiamate superglobal per indicarne la visibilità in qualunque parte dello script sono sempre scritte in maiuscolo I più attenti avranno fatto caso che abbiamo usato proprio un array associativo. $_GET e $_POST sono due array associativi contenenti le “chiavi” per accedere alle variabili lette dal client (sottoposte tramite un form su richiesta, rispettivamente, GET e POST). Spiegato il mistero del GET e POST, andiamo ad analizzare il resto del codice. Come ho detto in precedenza i valori saranno visualizzati in una tabella in HTML, per fare questo mi avvalgo del mitico costrutto echo e della concatenazione di stringhe che in PHP si concatenano con il .(dot) Andiamo quindi a stampare la tabella con "<table border=\"1\">",creandoci la riga con <tr> e popolando tale con le 4 celle <td> contenti il valori di nome, cognome, classeutente e sesso.
  5. Questo articolo sarà puramente introduttivo. Cercherò di spiegare cosa è PHP, quali sono le sue potenzialità e come impostare la propria postazione per lavorare con PHP. Cominciamo a dire cos'è il PHP. Ripeto quello che ho scritto nel post precedente, PHP è un linguaggio di scripting server side HTML embedded. A differenza dei linguaggi eseguenti sul lato client, come JavaScript o HTML, PHP viene eseguito sul server, richiamando l'apposito modulo che farà da interprete. Altri linguaggi server side molto conosciuti sono Perl e la piattaforma ASP. E Java? Beh quest'ultimo è un vero è proprio linguaggio di programmazione e si possono creare siti dinamici utilizzando le servlet e le jsp, separando la presentazione dalla logica dei contenuti. Ovviamente tale procedimento è possibile anche su PHP, ma con uno sforzo maggiore. Per chi non avesse capito una mazza di quanto ho detto prima, quella che segue è una semplice rappresentazione di come avviene un colloquio http per una richiesta di esecuzione di una pagina PHP: Perché imparare PHP e non ASP o Java? Sicuramente vi starete chiedondo perché conviene imparare PHP, Perl, Java o la piattaforma ASP di Microzzoz(Microsoft ). Rispetto alle soluzione ASP, PHP non è un linguaggio proprietario, è Open Source ed è gratuito, oltre ad essere multipiattaforma. Grazie alla sua caratteristiche Open Source in rete è possibile trovare risorse professionali e script gratuiti, senza contare sull'ampia comunità di sviluppatori che gira intorno a questo linguaggio. E' meno complesso rispetto al PERL e all'architettura di Java, ma la potenzialità sono le stesse. La sua velocità di esecuzioni, l'integrazione con i DBMS più famosi MySQL ad esempio, ed il supporto offerto da Apache a questo linguaggio, fanno che PHP sia la soluzione ottimale per progetti che richiedono rapidità di sviluppo e prestazioni notevoli. Figo eh? Beh non è finita qua, PHP offre anche l'integrazione con oggetto della Microsoft con XML, con linguaggio Java, con Flash della Macromedia, manipolazione di file PDF. Le prime funzioni che vogliamo subito provare, quando cominciamo ad imparare un linguaggio di programmazione, sono quelle relative all'output.. Non a casa il nostro primo programma, sarà quello di stampare la mitica frase che si può trovare in qualsiasi corso: Hello World. I tag di apertura e chiusura del nostro codice PHP sono <php e ?> vediamo quindi come attraverso la funzione print andremo a stampare sulla videata del nostro Browser Hello World. <?PHP print ‘Hello World!’; ?> All'esecuzione di questo script, verrà stampata la scritta “Hello World!. Originale eh? Altra funzione di stampa, anzi non è una funzione ma un costrutto di linguaggio, è l’istruzione echo. Vediamo più in particolare come integrare il codice PHP nelle nostre pagine HTML. I blocchi di istruzioni vanno inserite all'interno di opportuni tag (<?PHP ?>) e il file deve avere estensione .php e NON .html . Quindi come stampare un Hello World con PHP all'interno di una pagina HTML? Supponiamo di avere il seguente codice: <html> <head> <title>Script PHP di prova</title> </head> <body> <font face=”Verdana” size=”2”>Font Verdana di dimensione 2</font> <?PHP echo “ <font face=\”Arial\” size=\”3\”><b> Font Arial di dimensione 3 in grassetto</b></font>”; ?> </body> </html> Il codice restituito dal browser risulterà essere: <html> <head> <title>Script PHP di prova</title> </head> <body> <font face=”Verdana” size=”2”>Font Verdana di dimensione 2</font> <font face=”Arial” size=”3”><b> Font Arial di dimensione 3 in grassetto</b></font> </body> </html> Questo perché l'echo viene elaborato dal server che traduce l'istruzione ed invia al client l'HTML. Spero di essere stato chiaro e per chi avesse domande, non esitasse a farle, cercherò di rispondere asd .
  6. Dato che vedo del tutto assenti dei tutorial sulla programmazione,volendo contribuire alla comunità, credo che comincerò a parlarvi della programmazione server side anche se la mia esperienza nel fare tutorial è pari a 0 ed accetto correzioni ,consigli e critiche(purché siano costruttive) dato che non ho mai pensato di sapere tutto. Cito la frase di StandardBus dato che mi ha tolto le parole di bocca, . Un po' di teoria: Ogni giorno interagiamo con i più svariati serviti su Internet, Posta Elettronica,Cloud, Collegamento Remoto e chi ne ha più ne metta. Tali servizi vedono due lati applicativi: un lato client che usufruisce del servizio un lato server che offre il servizio, generalmente fornisce il servizio a più client contemperante. Client e Server dialogano con un protocollo chiamato HTTP. (Vi starete chiedendo cos'è un protocollo, fondamentalmente lo possiamo vedere come un accordo fra partecipanti ad una comunicazione,e su come tale deve procedere). I server gestiscono l'accesso e quindi la condivisione di un insieme di pagine web, mentre i client accedono a tali, facendo richiesta ai server. Ciascun documento web è identificato univocamente da un URL (Uniform Resource Locator), esempio al volo è il seguento indirizzo: http://www.nonsologaming.com/ Operazioni come la visualizzazione di pagine web e la "traduzione delle richieste dell'utente in richieste del client secondo il protocollo HTTP" sono offerte dai browser(quindi Internet Explorer,Mozilla Firefox, Google Chorme, Safari, Opera, ecc..). Cosa significa quindi programmare lato Server? In un'applicazione software di tipo Desktop(ad esempio Notepad) ad ogni input dell'utente corrisponde una reazione del programma che dipende dallo stato precedente del programma, al contrario in applicazioni di tipo web la gestione dell'aggiornamento dello stato risulta decisamente più complessa in quanto l'utente interagisce con l'interfaccia che si trova nel client ma i dati che descrivono lo stato dell'applicazione risiedono sul server e il protocollo HTTP non consente di sapere quali azioni ha effettuato un certo client in precedenza. Linguaggi programmazione server side: I linguaggi lato server quei linguaggi di programmazione che vengono interpretati ed elaborati dal server il quale, successivamente, invia i risultati al client (il browser dell'utente). I linguaggi lato server più diffusi sono il PHP, l'ASP e Java. Un programma scritto con questo tipo di linguaggi viene sempre elaborato sul server e mai reso disponibile all'utente, il quale può visualizzare solo il risultato o output del programma (tipicamente codice HTML). Questo concetto è molto importante in quanto sta alla base della sicurezza e dell'affidabilità offerti dalla programmazione lato server.
  7. Caos_94

    Ecco Ubuntu 13.10!

    A seguito dell'installazione dei driver proprietari, si sono presentati diversi problemi che mi hanno portato a reinstallare l'intero OS, strana cosa, dato che sul fisso i driver proprietari non hanno dato nessun problema.
  8. Smartphone & Tablet Android Moddati: Galaxy S - XBean 3.0 Galaxy S2 - CyanogenMod 10.1 Galaxy S3 - (Recupero IMEI) +(Flash) UltimaROM v15.1 Titan Galaxy Tab 7.0" - CyanogenMod 10.2 Experimental Builds Nexus 4 - (Only)Bootloader Unlock Nexus 7 (ver. 2012) - (Only)Bootloader Unlock Xperia U -(Only)Bootloader Unlock Device Apple Jailbreak: iPod Touch 2g
  9. Caos_94

    Ecco Ubuntu 13.10!

    Ho provato la nuova distro sul mio portatile (HP Pavilion h6-2307el), i3 e 4gb di ram. L'uso inteso come fluidità del sistema e usabilità dei vari software sicuramente è ottima, pessima a mio parere la gestione energetica (forse l'assenza dei driver??, non vorrei sparare cavolate), mi ritrovo spesso la ventola rumorosa, cosa che non accade minimamente con Windows 8 forse un po' più evidente con Windows 7, ma sicuramente quest'aspetto resta da migliorare su Ubuntu e forse su Linux in generale.
  10. Io ti consiglio la X-Bean 3.0. è veramente molto satabile e leggera. Come base ha sempre JB ma alla versione 4.1.2 che a quanto ne so è la migliore relase di Android rilasciato da Google.
  11. /** * Genera permutazioni di un insieme di numeri assegnato. */ import prog.io.*; import java.util.Random; class Permutazioni { public static void main (String[] args ) { ConsoleInputManager in = new ConsoleInputManager(); ConsoleOutputManager out = new ConsoleOutputManager(); Random rand = new Random(); // genera numeri casuali // insieme base int[] insieme = {1,2,3,4,5,6,7,8,9,10}; int copiaDiInsieme[] = new int[insieme.length]; int numPermutaz; while((numPermutaz = in.readInt("Quante Permutazioni? (> 0) :")) <= 0); for(int n = 1; n <= numPermutaz; n++) { // copia di insieme for (int i = 0; i < insieme.length; i++) copiaDiInsieme = insieme; // creazione insieme permutato int[] permutazione = new int[insieme.length]; out.print("Permutazione [" + n + "]: "); int j = 0; while (j < insieme.length) { // restituisce num. casuali in [0, insieme.length-1] int r = rand.nextInt(insieme.length); if (copiaDiInsieme[r] != -1) { permutazione[j++] = copiaDiInsieme[r]; copiaDiInsieme[r] = -1; } } for (int i=0; i < permutazione.length; i++) out.print(permutazione + " "); out.println(); } } }
  12. 1. metti un listener al JTextField 2. per la data esiste la classe GregorianCalendar per il tempo ti conviene guardare la documentazione Oracle, c'è sicuramente qualcosa
  13. Caos_94

    Nexus 7 only WiFi o WiFi+3G?

    Beh io non ho i problemi devo ringraziare il team CyanogenMod per Android 4.2 su Galaxy S :asd:
  14. Caos_94

    Nexus 4: le vostre opinioni

    Una curiosità..come hai fatto a comprarlo?
  15. Caos_94

    Nexus 7 only WiFi o WiFi+3G?

    Posto una riflessione fatta analizzando la mia situazione personale. Ho optato per la versione WiFi in quanto nella scuola che frequento al momento vi è già la WiFi, sto parlando di una scuola 2.0 quindi è normale che ci sia credo. Altra punto, mi capita poche volte di usare Internet e sinceramente per usare What's App e Facebook preferisco di gran lunga il telefono (inoltre non mi piace camminare scrivendo un messaggio al tablet). Altro punto, in molti mi hanno detto che senza il 3G un tablet è "castrato", ma secondo me è un aggiunta inutile (almeno per le mie esigenze). Pensate alla VERGOGNOSA velocità delle reti italiane, preferirei far a meno del 3G-risparmio la batteria e quei 10 euro mensili. Quando ho necessità, userò il telefono. Posso capire chi proviene da un Nokia 3310 ha per forza bisogno di un modulo 3G ma per coloro che hanno già uno smartphone con un contratto ad internet credo che il modulo non sia necessario.
×
×
  • Crea Nuovo...