Sorgente dell'esempio | |
<!-- Parte in HTML --> <html><head> <title>Lezioncina sul PHP - 13</title> <meta name="author" content="Ing. Stefano Salvi"> </head> <body bgcolor=#ffffcc text=#000080 vlink=#0040cc link=#0080ff> <table width=100% height=100%><tr> <td width=90% valign=middle> <h1 align=center><font size=+5>Esempio di pagina HTML Dinamica</font></h1> </td><td width=90 valign=middle><img src=php.jpg align=right border=0 usemap=#mymap></td></tr> <map name=mymap> <area shape=rect coords=0,0,30,90 href=12.html> <area shape=rect coords=30,0,60,90 href=index.html> <area shape=rect coords=60,0,90,90 href=14.html> </map> <tr> <td height=80% valign=middle align=left colspan=2> <font size=+5><ul> <h1 align=center>Esempio di pagina HTML Dinamica con interazione dell'utente</h1> <h2 align=center>Clicka sulla cella dove vuoi inserire il simbolo del giocatore corrente</h2> <?php // Inizio parte in PHP $quads = $_REQUEST["quads"]; // Estrago le variabili insrite dall'utente $player = $_REQUEST["player"]; if (!$quads) { // Se la variabile 'quads' non esiste $quads = ",,,;,,,;,,,;"; // La creo con tutte le celle vuote } if ($player == "x") { // Se il giocatore corrente e' 'x' $player= "o"; // Lo cambio in 'o' $color= "o.jpg"; // e di conseguenza scelgo il suo simbolo } else { // Altrimenti (giocatore = 'o' o nessun giocatore $player= "x"; // Scelgo il giocatore 'x' $color= "ics.jpg"; // Con il relativo simbolo } // Stampo (in HTML) il giocatore corrente (uso il tag IMG) echo "<center>Giocatore corrente: <img align=middle src=$color><br>\n"; // Spezzo la variabile $quads nelle singole celle $status=explode (";",$quads); // Spezzo 'quads' nelle righe che contiene for ($y=0;$y < 3; $y ++) { // Loop sulle righe della tabella $val[$y] = explode (",", $status [$y]); // Spezza la riga nelle celle } echo "<table border=1>\n"; // Stampo l'intestazione della tabella for ($y=0;$y < 3; $y ++) { // Loop sulle righe della tabella echo "<tr>\n"; // Intestazione di riga for ($x = 0; $x < 3; $x ++) { // Loop sulle celle if ($val [$y][$x] == "x") { // Se la riga contiene 'x' // Genere una cella contente l'immagine 'x' echo "<td><img src=ics.jpg border=0></td>\n"; } else if ($val [$y][$x] == "o") { // Altrimenti se e' 'o' // Genere una cella contente l'immagine 'o' echo "<td><img src=o.jpg border=0></td>\n"; } else { // Altrimenti la cella e' vuota $link = ""; // Prepara una stringa vuota for ($oy=0;$oy < 3; $oy ++) { // Loop righe for ($ox = 0; $ox < 3; $ox ++) { // loop celle if ($ox == $x || $oy == $y) { // Se la cella e' la corrente $link = "$link$player,"; // aggiunge simbolo corrente (con virgola) } else { // altrimenti cella corrente $cur=$val[$oy][$ox]; // Recupera il vecchio valore della cella $link = "$link$cur,"; // aggiunge valore vecchio (con virgola) } } $link = "$link;"; // Aggiunge il ';' in fondo alla riga } // Una volta creata la nuova 'quads' in 'link', // Stampa una cella contente una cella con contenuto 'blank' // e con un collegamento a questa stessa pagina, ma con due // parametri 'GET': 'player' e 'quads' echo "<td><a href=13.php?player=$player&quads=$link><img\n"; echo "src=blank.jpg border=0></a></td>\n"; } } echo "</tr>\n"; // Chiudo la riga } echo "</table>\n"; // Chiudo la tabella // Stampo i link a pie' di pagina (potevo anche farlo in HTML...) echo "<h1 align=center>[<a href=13.php>Ricomincia</a>][<a\n"; echo "href=13.s.php>Vedi il sorgente</a>]</h1></center>\n"; ?> <!-- Fine parte in PHP, ripresa di HTML --> </font></td></tr></table> <p align=right><i>© Ing. Stefano Salvi - </i>released under <a href="http://www.gnu.org/licenses/fdl.txt" title="Testo inglese della FDL presso www.gnu.org">FDL licence</a></p> </body> </html> |
© Ing. Stefano Salvi - released under FDL licence