Link con passaggio di parametri

gianlucag

Nuovo Utente
8 Lug 2011
2
0
0
Buon pomeriggio,
è il primo messaggio che scrivo e prego i moderatori di spostare se necessario il messaggio in una categoria più appropriata.
Da poco programmo in php e mi trovo davanti ad un problema:
Dato un database,estraggo le informazioni e le colloco in una tabella.
Vorrei poter creare un link dettagli che mi rimanda ad una pagina dettagli.php e mi mostri appunto i dettagli di quel record.
ES:
Nome Cognome
Mario Rossi DETTAGLI
Giuseppe verdi DETTAGLI

come posso implementare il fatto che vorrei cliccare su dettagli dunque passare il codice fiscale alla funzione dettagli()?
 
Puoi usare un link del genere:
Codice:
http://www.example.com/dettagli.php?cod=CODICE
E poi nella pagina PHP puoi usare:
PHP:
$_GET['cod']
Per recuperare il codice fiscale e quindi i dati relativi all'utente dal database.
 
PHP:
if(isset($_GET['cod']))
{
$sql = mysql_query("SELECT * FROM tabella WHERE CF=".$_GET['cod']) or die (mysql_error());
// .....
}
 
Alessandro1997 ti ringrazio tanto :)
Non ero a conoscenza della funzione per limitare le sql inection e me la studierò per bene.
Inoltro se volessi utilizzare una soluzione simile al POST, ovvero non vorrei utilizzare l'url per passare il parametro, come potrei fare?
Ancora grazie!
 
Per utilizzare POST devi avere necessariamente un form. Quindi nella pagina del form dovrai scrivere una cosa del genere:
HTML:
<form action="pagina.php" method="post">
    <label>Codice fiscale:</label> <input type="text" name="cod" />
    <input type="submit" name="submit" value="Invia" />
</form>
E poi nella pagina PHP:
PHP:
<?php
if (!isset($_POST['submit'])) {
    // accesso diretto al file, reindirizza al form
    header('Location: form.html');
    exit();
}

// recupera i dati dal form
$cod = isset($_POST['cod'])    ? trim($_POST['cod']) : '';
$cod = !get_magic_quotes_gpc() ? addslashes($cod)    : $cod;

if ($cod == '') {
    // codice fiscale non specificato
    exit('Nessun codice fiscale specificato.');
}

// recupera i dati dalla tabella
$sql = "SELECT * FROM tabella WHERE cod='{$cod}'";
$query = mysql_query($sql) or die('Impossibile recuperare i dati.');

if (mysql_num_rows($query) == 0) {
    // codice fiscale non trovato nella tabella
    exit('Codice fiscale non presente nel database.');
}

// salva i dati nell'array $row
$row = mysql_fetch_assoc($query);

// ...
?>
 

Discussioni simili