-
FRASE:
Realizzare il codice php che visualizzi una frase a scelta con tutti i tipi di Heading disponibile (H1 - H6) applicando agli heading pari il l'attributo bold ed a quelli dispari l'attributo underline.
w3schools
-
RIGHE:
Realizzare il codice php che visualizzi un contatore da 10 a 1,
dovrà essere visualizzata la stringa "il numero attuale è : n"
i numeri pari useranno uno style "pari" e gli dispari utilizzino lo style "dispari", la frase "il numero attuale è : " userà rispettivamente lo stile "frasepari" e "frasedispari".
Gli stili non dovranno essere inline, dovranno modificare almeno tre attributi del testo e dovranno avere attributi distinti (es: scritta verde bold numero rosso sottolineato).
Comodo in questi casi l'uso dell'operatore ternario:
... class=" echo ($Riga%2==0 ? "pari" : "dispari") ?> "...
-
FUNZIONE:
Realizzare una funzione php che, dato come parametro un numero intero n>0, ritorni una stringa di caratteri casuali di lunghezza n.
Realizzare una pagina php per testare la funzione creata che dia in output la stringa casuale.
-
ATLETI:
Realizzare una pagina che permetta l'inserimento dei dati presenti nella scheda atleta rispettandone il layout con l'utilizzo dei css, i dati dovranno essere salvati in un file il cui nome sarà il codice fiscale inserito, realizzare anche la pagina di consultazione della scheda, sempre rispettandone il layout, alla pagina di consultazione si arriverà attraverso un modulo che permetta l'inserimento del codice fiscale che si vuole consultare.
Aggiungere il codice javascript necessario a verificare che i campi obbligatori siano stati compilati correttamente, considerare campi obbligatori quelli presenti nelle prime quattro righe e quelli delle ultime tre.
-
IMPORTI:
Creare un form html che consenta l'immissione dei seguenti valori:
Nominativo
Provincia
Importo
I primi 2 campi devono essere immessi obbligatoriamente. Il campo importo, se omesso, dovrà essere impostato a 0.
Alla pressione del tasto SALVA, dopo i controlli richiesti, richiamare uno script php per salvare i dati immessi in un file di testo CREDITI.TXT.
Lo script dovrà comunicare l'avvenuto salvataggio e proporre un link per ritornare all'inserimento di nuovi dati ed un altro link per il richiamo di un altro script che consenta la visualizzazione di un record per riga, dei dati inseriti (per record si intendano i 3 campi immessi tramite form).
Alla fine dell'elenco dovrà essere riportato il totale degli importi.
-
ROTTURA DI CODICE:
Sia dato un file di testo CREDITI.TXT con il seguente tracciato logico:
Nominativo
Provincia
Importo
Le informazioni sono memorizzate una per riga, pertanto 3 righe compongono un record logico.
I dati sono ordinati per provincia come riportato di seguito.
Rossi CL 1000
Bianchi CL 256
Verdi CT 100
Black CT 990
White CT 870
Neri EN 450
Green EN 200
Gray EN 125
...
Memorizzare in un file TOTALI.TXT e visualizzare un elenco con gli importi totalizzati come indicato di seguito.
CL 1256
CT 1960
EN 325
...
-
GESTIONE:
Realizzare il database e un mini sito web che permettano:
1) L'inserimento dell'anagrafica della classe con i seguenti campi:
Nome
Cognome
CF
Età (in anni)
E la relativa interfaccia di interrogazione che permetta:
A partire dal codice Fiscale visualizzare i dati di uno studente
A partire da una età visualizzare gli utenti con quella età
La media delle età di tutti gli studenti e la lista di tutti gli studenti e di quanti mesi sono distanti dall'età media.
Consegnare:
il dump (backup) del database
un file compresso (.zip) che contenga il sito
-
GRAFI:
Dato un database Dijkstra
contenente le seguenti
tabelle ...con innodb (...engine=innodb)
graphs(id, graph_name)
nodes(id,node_name,graph)
edges(node_out,node_in,weight,graph)
Nella tabella graph creare un unico record "1,geo". Per il momento tutte le registrazioni in nodes e edges saranno riferite a detto record.
Impostare integrità referenziale tra le tabelle in modo da non consentire l'input di record non collegati ad alcun grafo. (...on delete cascade on update cascade)
Creare una interfaccia html ed un
modulo php che permettano l'inserimento di più record nella tabella
nodes immettendo da tastiera una stringa contenente una lista di nomi
separati da una ",".
Ogni nome di nodo dovrà essere archiviato in un record diverso.
Esempio:
da una stringa "CT,ME,PA,EN,..." saranno generati i seguenti record:
1,CT,1
2,ME,1
3,PA,1
4,EN,1
-
Creare una pagina html che consenta l'autenticazione immettendo utente e password.
Lo script php ricevente, dopo avere verificato la correttezza dei dati immessi,
dovrà memorizzare l'utente in una variabile di sessione.
A questo scopo, nel db GRAPHS, esisterà la seguente tabella:
users(user, password)
Ogni tentativo di accesso dovrà essere registrato in un file LOG
che dovrà memorizzare:
utente
esito ("OK"/"ERRORE")
data
ora
Se l'accesso avrà esito positivo visualizzare una pagina con messaggio adeguato, altrimenti riproporre la pagina di autenticazione.
-
ESEMPIO DATE:
Esempio d'uso di funzioni time e date per ottenere la data di sistema e per formattarla sotto forma testuale
$t=time();
$d=date("d/m/y H:i:s",$t);
echo time()."\n";
echo $d."\n";
//1364297105 26/03/13 12:25:05
$d=date("H:i:s",$t);
echo time()."\n";
echo $d
// 1364297105 12:25:05
-
ARCHIVIARE IMMAGINI:
Conservare le immagini in una tabella é possibile almeno in 2 modi:
*Creare un campo di tipo BLOB che consente la memorizzazioni di grandi quantità di informazioni binarie (non testo) e in esso salvare l'immagine;
*Creare un campo di tipo char o varchar e cinservare in esso il nome del file immagine completo di percorso (p.e. ../images/moto.jpg)
CODICE DI ESEMPIO
MySQL:
CREATE TABLE IF NOT EXISTS `photos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`titolo` varchar(40) DEFAULT NULL,
`photo_small` varchar(40) NOT NULL,
`photo_large` varchar(40) NOT NULL,
`descrizione` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
--
-- Dump dei dati per la tabella `photos`
--
INSERT INTO `photos` (`id`, `titolo`, `photo_small`, `photo_large`, `descrizione`) VALUES
(1, 'Motobecane', '../images/motobecane_s.jpg', '../images/motobecane_l.jpg', 'Fantastica moto anni 2000.\r\nPer veri intenditori della tecnologia ed amatori delle motociclette più moderne.'),
(2, 'Minichic', '../images/minichic_s.jpg', '../images/minichic_l.jpg', 'Per l''uomo che non deve chiedere MAI!\r\nMoto di gran classe per tutti gli usi:\r\nPartabile, lusso, turismo, GT, sport.');
PHP:
<?
error_reporting(0);
include "connect.php";
?>
<table border="1">
<?
$con=mysql_connect($host, $user, $password) or die ("Errore ");
mysql_select_db("test", $con) or die ("Errore di connessione al DB");
$sql="select * from photos;";
$rs=mysql_query($sql, $con);
while ($riga=mysql_fetch_array($rs)) {
echo "<tr>\n";
echo "<td> ".$riga["id"]."";
echo "<td> ".$riga["descrizione"]."";
echo "<td>
";
echo "</tr>";
}
?>
</table>
</body>