Ho creato questa query per visualizzare un database che contiene tutti i soci di un circolo come vedete ho creato 3 array inizialmente il primo field(nome del campo sul db) il secondo query_field(nome dei campi nella query es: soci.tessera) il terzo fieldname(il nome dei campi visualizzati nell intestazione della tabella)
dopo di che la query funziona tutto correttamente , ho creato un ciclo for per riempire la tabella di intestazione (fieldname), e in seguito ho usato un while($row=pg_fetch_array per popolare le righe.
Adesso nel primo ciclo for come potete vedere ho inserito una cosa di questo tipo:
echo "<td><a href=index.php?sort=$field[$i]>$fieldname[$i]"; per ordinare le colonne quando vengono cliccate e qui tutto bene funziona tutto.
ora sotto il while($row=pg_fetch_array ho inserito un pulsante che dovrebbe consentirmi la modifica della singola righa e ho inserito una cosa del genere:echo "<td>$row[$i]";
echo "<td><a href=mod.php?mod=$tessera><img src=mod.jpg>"; in modo che mi riesco a tirar fuori il numero di tessera e poi prendermelo con un get nella pagina mod.php.
unico problema nell'url non viene visualizzato niente e non capisco perchè ho provato anche ad inserire al posto di $tessera $field[$i] ma niente non capisco dove sia il problema .
Ribadisco sono nuovo in php quindi sicuramente sarà una banalità ma cmq ringrazio in anticipo.
Ciao
dopo di che la query funziona tutto correttamente , ho creato un ciclo for per riempire la tabella di intestazione (fieldname), e in seguito ho usato un while($row=pg_fetch_array per popolare le righe.
Adesso nel primo ciclo for come potete vedere ho inserito una cosa di questo tipo:
echo "<td><a href=index.php?sort=$field[$i]>$fieldname[$i]"; per ordinare le colonne quando vengono cliccate e qui tutto bene funziona tutto.
ora sotto il while($row=pg_fetch_array ho inserito un pulsante che dovrebbe consentirmi la modifica della singola righa e ho inserito una cosa del genere:echo "<td>$row[$i]";
echo "<td><a href=mod.php?mod=$tessera><img src=mod.jpg>"; in modo che mi riesco a tirar fuori il numero di tessera e poi prendermelo con un get nella pagina mod.php.
unico problema nell'url non viene visualizzato niente e non capisco perchè ho provato anche ad inserire al posto di $tessera $field[$i] ma niente non capisco dove sia il problema .
Ribadisco sono nuovo in php quindi sicuramente sarà una banalità ma cmq ringrazio in anticipo.
Ciao
PHP:
$connessione = pg_connect($conn_string);
if (!$connessione) die("Errore nella selezione del database");
$field=array("tessera","cognome","nome","data_agg_anagrafica","nome_nas","tel1","nomea","anno");
$query_field=array("","","","","","","","");
$fieldname=array("Tessera","Cognome","Nome","Data Agg Anagrafica","Comune Residenza","Telefono","Contratto","Iscrizione");
$query="SELECTsoci.tessera,soci.cognome,soci.nome,soci.data_agg_anagrafica,
com_res.nome||' ('||com_res.provincia||')' AS nome_nas,soci.tel1,
tipologie.codice||' ('||aziende.nome||')' AS nomea,iscrizioni.anno";
if (isset($anno)) $query.=",iscrizioni";
$query.=" FROM soci
LEFT JOIN comuni AS com_res ON soci.comune_residenza = com_res.id
LEFT JOIN comuni AS com_nas ON soci.comune_nascita = com_nas.id
LEFT JOIN iscrizioni ON soci.tessera = iscrizioni.tessera
LEFT JOIN tipologie ON iscrizioni.tipologia = tipologie.id
LEFT JOIN aziende ON tipologie.azienda = aziende.id";
if (isset($anno)) $query.=" AND iscrizioni.tessera=soci.tessera AND iscrizioni.anno=$anno";
if (isset($_REQUEST["sort"]))
for ($i=0;$i<count($query_field);++$i)
if ($_REQUEST["sort"]==$field[$i])
{$query.=" ORDER BY ".$_REQUEST["sort"]; break;}
$query = pg_query($connessione,$query);
echo "<br>";
if ($query==FALSE) die("errore nella composizione della query". mysql_error());
echo "<table width='100%'><tr class=head>";
for ($i=0;$i<count($query_field);++$i) {
//if per decidere se visualizzare il campo
echo "<td><a href=index.php?sort=$field[$i]>$fieldname[$i]";
if ($field[$i]==$_REQUEST["sort"])
echo " <img src=sortup.png>";
echo "</a></td>";
}
echo "</tr>";
$first=true;
while($row=pg_fetch_array($query)) {
$class=($first?"a":"b"); $first=!$first;
echo "<tr class=$class>";
for ($i=0;$i<count($query_field);++$i)
//if per decidere se visualizzare il campo
echo "<td>$row[$i]";
echo "<td><a href=index.php?mod=$tessera><img src=mod.jpg>";
echo "</a></td>";
}