Intanto premetto che sto studiando PHP da solo due mesi senza aver mai avuto a che fare con la programmazione e questo che sto facendo è un esercizio.
l'id del record serve proprio ad identificare il record in modo univoco.
Ok, e essendo il 'name' del select assume valore numerico se value=ID oppure stringa se value=$nome.
ma non si capisce "cosa" vorresti fare
Allora, ho due tabelle solamente:
1) personale - che contiene i campi 'ID' e 'nome' ed altri
2) passatempi - con campi 'ID_nome(numerico univoco)' ed 'hobby' che viene via via aggiornata con le selezioni dal menù select.
Cosa vorrei fare:
Pagina1 - form di selezione(name=ID_record) con i nomi di 'personale' e una serie di hobby(inseriti da codice perché è solo uno studio).
Pagina2 - inserisco le due coppie key-value nella tabella 'passatempi' in modo che l'ID_nome=ID con la query
Codice PHP:
$sql = "INSERT INTO passatempi(ID_nome,hobby) VALUES('$ID_record','$hobby_ins')";
creo pulsante di navigazione verso la terza pagina e nel testo voglio visualizzare il 'nome' al quale è stato aggiunto un hobby(quindi mi serve anche 'nome' oltre a 'ID').
Pagina3 - Visualizzazione del nome che corrisponde all'ID(e quindi anche a ID_nome) ed i suoi vari hobby.
Il mio problema è che se con select-name passo value=ID mi manca il nome nella seconda pagina, se invece passo value=nome, nella tabella personale i record vengono inseriti tutti con ID_nome=0, quindi perdo la funzione di collegamento fra gli ID delle due tabelle.
Devo aggiungere una query su pagina2 e recuperare 'nome'?
Pagina2 ('$nome' stampa l'ultimo nominativo del menu select di pagina1)
Codice PHP:
$ID_record = $_GET['ID_record'];
$hobby_ins = $_GET['hobby_ins'];
$nome = $_GET['nome'];
include("test_connection.php");
$sql_2 = "SELECT * FROM passatempi WHERE ID_nome='$ID_record' AND hobby='$hobby_ins'";
$risultati = mysql_query($sql_2,$connessione);
$num_righe = mysql_num_rows($risultati);
if($num_righe == 0) {
echo "Nessun doppione trovato:
";
$sql = "INSERT INTO passatempi(ID_nome,hobby) VALUES('$ID_record','$hobby_ins')";
if(!mysql_query($sql,$connessione)) {
echo "Errore, non posso connettermi al database
";
echo "
<hr>
[url='join.php']Indietro[/url]";
exit;
} else {
echo "Tabella aggiornata:[" .mysql_affected_rows() ."] record inserito
";
}
} else {
echo "Record già esistente!";
echo "
<hr>
[url='join.php']Indietro[/url]";
exit;
}
echo "
Se vuoi vedere tutti gli altri hobby di [b]$nome[/b] clicca sotto:
";
echo "
<form method=GET action='join_show.php'>
<input type='hidden' name='ID_record' value='$ID_record'>
<input type='submit' value='Controlla gli Hobby!'>
</form>";
Pagina3 ('$nome' stampa correttamente il nome selezionato dal menu di pagina1)
Codice PHP:
include("test_connection.php");
$ID_record = $_GET['ID_record'];
$sql = "SELECT hobby,nome FROM personale,passatempi WHERE personale.ID=ID_nome AND ID='$ID_record'";
$risultati = mysql_query($sql,$connessione);
$num_righe = mysql_num_rows($risultati);
if($num_righe == 0) {
echo "Spiacente, non trovo informazioni";
exit;
} else {
echo "<table border=1 bgcolor='#CCDDDD'><tr><th> Hobby </th></tr>";
while($riga = mysql_fetch_array($risultati)) {
$nome = $riga['nome'];
$hobby = $riga['hobby'];
echo "<tr align=center><td> $hobby </td></tr>";
}
echo "</table>";
echo "
<table border=1><tr><th> Nome </td></tr> <tr><td> $nome </td></tr>";
echo "</table>";
}