lunedì 11 marzo 2013

Link statici

vai all' indice generale

Link statici

Vediamo come inserire in presentazione dei link statici recuperati dal modello. Creiamo le classi modello, controllo e tre di vista , home, link1 e link2 :

modello.php :
<?php
class modello extends CI_Model {
       function __construct()
       {
             parent::__construct();
       }
       function get_dati()
       {
             $oggetto1["id"] = 1;
             $oggetto1["contenuto"] = "aaaaaa";
             $oggetto1["link"] = "<a href=\"http://localhost:8080/CI8/index.php/controllo/link1\">LINK1</a>";
             $oggetto2["id"] = 2;
             $oggetto2["contenuto"] = "bbbbbb";
             $oggetto2["link"] = "<a href=\"http://localhost:8080/CI8/index.php/controllo/link2\">LINK2</a>";
             $oggetti = Array ($oggetto1,$oggetto2);
             return $oggetti;
       }
}

controllo.php :
<?php
class controllo extends CI_Controller {
       public function index()
       {
             $this->load->model("modello");
             $oggettiDalModello = $this->modello->get_dati();
             $data["oggettiAllaVista"] = $oggettiDalModello;
             $this->load->view('home',$data);
       }
       public function link1()
       {
             $this->load->view("link1");
       }
       public function link2()
       {
             $this->load->view("link2");
       }
}

home.php :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>home</title>
</head>
<body>
<h1>HOME</h1>
<?php
foreach ($oggettiAllaVista as $riga)
{
       echo $riga['id'] , ' ';
       echo $riga['contenuto'] , ' ';
       echo $riga['link'] , ' ';
       echo '<br>';
}
?>
</body>
</html>
 
link1.php :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>dati</title>
</head>
<body>
<h1>dati ... </h1>
<table>
<tr>
<td>Premi il bottone e torna alla pagina home</td>
</tr>
<tr>
<td>
<form name="myform"
             action=http://localhost:8080/CI8/index.php/controllo
             method="POST">
             <input type="submit" value="Premi il bottone"><br>
             </form>
             </td>
             </tr>
             </table>
             </body>
             </html>
link2.php : ha lo stesso codice di link1, cioè un tasto per tornare alla home.

Vediamo che dal modello si recuperano gli indirizzi. In questo caso per semplicità viene inserito l'intero indirizzo in maniera sostanzialmente statica. Alla presentazione la vista home stampa il link nel ciclo come stampa gli altri campi. I link non funzionerebbero senza le funzioni link1 e link2 nel controllo. Questo esempio fa capire che la funzione di navigazione deve diventare parametrica e a seconda del parametro indirizzare ad una vista o ad un'altra in maniera dinamica.

note :

In questo esempio si è visto come definire un array ad etichette multidimensionale :

$oggetto1["id"] = 1;
$oggetto1["contenuto"] = "aaaaaa";
$oggetto2["id"] = 2;
$oggetto2["contenuto"] = "bbbbbb";
$oggetti = Array ($oggetto1,$oggetto2);
e come recuperarne i dati :
foreach ($oggetti as $riga)
{
       echo $riga['id'];
       echo $riga['contenuto'];
}

Si noti anche la forma da usare in HTML per inserire un link :
<a href=”paginaDaLinkare.html”>link</a>
in questo caso nella notazione del percorso assoluto.

Nessun commento:

Posta un commento