In questa guida vediamo come aggiungere un semplice modulo di ricerca al nostro sito realizzato in PHP che interagisce con un database Mysql.
Inserimento del Form
Avendo generato una struttura box model ovvero formata da una header, un main, una siderbar e un footer da includere in ogni pagina html tramite il comando:
<?php include("header.php"); ?>
Andiamo a modificare il file header.php aggiungendo il modulo:
<?php
echo'<header><a href="index.php" title="Torna alla Pagina Iniziale">La mia Cineteca Virtuale</a></header>
<div class="box">
<a href="index.php" title="Home Page">Home</a> <a href="scheda.php" title="Inserisci Scheda">Inserisci</a> <a href="mostra.php" title="Mostra Risultati">Mostra</a> <form action="risultati.php" method="GET"><input type="text" name="cerca"><input type="submit" value="RICERCA"></form></div>';
?>
La pagina di esecuzione dello script è stata chiamata risultati.php mentre il metodo utilizzato è GET che permetterà di mostrare sull’indirizzo url finale ciò che è stato cercato.
Il modulo è composto da un campo testuale con nome trova e dal pulsante di invio submit.
Importante! Trattandosi di codice php non possiamo, come in una comune pagina html, inserire direttamente il codice ma dobbiamo necessariamente usare il comando echo inserendo il tutto tra apici poiché vanno interpretate come stringhe.
Script PHP
A questo punto bisogna realizzare la pagina di destinazione, nel nostro caso denominata risultati.php.
<html>
<head>
<title>Mostra Risulati</title>
<link href="stile.css" rel="stylesheet">
</head>
<body>
<?php include("header.php");?>
<main>
<?php
require("config.php");
$c=$_GET["cerca"];
$sql="Select * from attrici where cognome='$c'";
$result=$conn->query($sql);
if ($result->num_rows>0)
{
echo"<table border=\"1\"><th>Nome e Cognome</th><th>Data di Nascita</th>";
while ($row=$result->fetch_assoc())
{
echo"<tr><td>".$row["nome"]." ".$row["cognome"]."</td><td>".$row["data_nascita"]."</td></tr>";
}
echo"</table>";
}
else
{
echo"Nessun risultato";
}
$conn->close();
?>
</main>
<?php include("siderbar.php");?>
<?php include("footer.php");?>
</body>
</html>
Importante! Fare attenzione ad apici e/o doppi apici. Eventualmente usare lo slah.
Spiegazione dello script:
- Dichiarazione iniziale del nome inviato tramite il modulo in una supervariabile globale associata per comodità a un’altra variabile.
- Preparazione query con $sql.
- Esecuzione query con variabile associata $result->query(sql).
- Ciclo If-While.
- IF pone la condizione ($result->num_rows>0) se i risultati contengono più di una riga mostra.
- Con il ciclo while si pone l’associazione ($row=$result->fetch_assoc())
- Con else poniamo la condizione altrimenti “Nessun risultato”.
- Infine chiudiamo la connessione $conn->close().
Il nuovo buono Premium è sottoscrivibile dal 14 novembre, la nuova liquidità che concorre, invece, inizia dall'8 novembre. Ulteriori dettagli…
Sono venuto a conoscenza il 13/11/2024 del 3% tramite posta elettronica ma la scadenza indicata è del 14/11/2024 . Quale…
Ho lo stesso problema con una sim poste mobile: tracker non abilitato. Sarò costretto a fare il reso.
L'ho ricaricato completamente, ma non sono mai riuscita ad accenderlo.
grazi delle vostre informazioni mi son state utili, visto che nel mio caso sono vent'anni che non adopero il computer…