- Home
- Categorie
- Coding e Sistemistica
- PHP
- Tag select e database
-
L'url allora è:
vvv.domain.ext/index.php?qualchecosa=qualcos'altro:)?
Oppure fai tutto tramite POST?
EDIT: proviamo a tagliare la testa al toro. Come action metti <? echo $_SERVER['PHP_SELF']; ?>
-
<br><br> <div id="visualizza_socio" align="center"> VISUALIZZA SOCIO <br><br> <form method="POST" <? echo $_SERVER['PHP_SELF']; ?>> Scegliere un cognome dalla lista: <select id="s_cognome" name="s_cognome"> <?php require_once "./inc/config.php"; $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die('Errore nella connessione. Verificare i parametri nel file config.php'); mysql_select_db($db_name, $db) or die('Errore nella selezione del database. Verificare i parametri nel file config.php'); // costruzione query $query="SELECT * FROM `elenco_soci` ORDER BY `cognome`"; $risultato=mysql_query($query,$db); while($riga = mysql_fetch_array($risultato)){ $s_cognome=$riga['cognome']; echo "<option value = $s_cognome > $s_cognome </option>"; // mancava il tag di chiusura } ?> </select> <input name="submit" type="submit" value="Invio"> </form> </div> <?php if($_POST["s_cognome"]){ require_once "./inc/config.php"; $cognome=$_POST['s_cognome']; // connessione al database $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die("Errore nella connessione. Verificare i parametri nel file ./inc/config.php"); // seleziona database mysql_select_db($db_name, $db) or die("Errore nella selezione del database. Verificare i parametri nel file ./inc/config.php"); // costruzione query $query="SELECT * FROM elenco_soci WHERE cognome = '$cognome'"; // risultato query $risultato=mysql_query($query,$db); echo "<div id='cerca_socio'> <table width='60%' align='center'> <tr><th colspan='7' align='left'>Dati Anagrafici</th></tr> <tr> <th align='left'>id</th> <th align='left'>Data Iscrizione</th> <th align='left'>Data Nascita</th> <th align='left'>Cognome</th> <th align='left'>Nome</th> <th align='left'>Tel. Abitazione</th> <th align='left'>Tel. Cellulare</th> </tr> "; // Riga contenente i dati while($riga = mysql_fetch_array($risultato)){ $id=$riga['id_socio']; $data_iscrizione=date('d/m/Y', $riga['data_iscrizione']); $data_nascita=date('d/m/Y', $riga['data_nascita']); echo " <tr> <td>".$riga['id_socio']."</td> <td>".$data_iscrizione."</td> <td>".$data_nascita."</td> <td>".$riga['cognome']."</td> <td>".$riga['nome']."</td> <td>".$riga['telefono_abitazione']."</td> <td>".$riga['telefono_cellulare']."</td> </tr> </table> "; } // connessione al database $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die("Errore nella connessione. Verificare i parametri nel file ./inc/config.php"); // seleziona database mysql_select_db($db_name, $db) or die("Errore nella selezione del database. Verificare i parametri nel file ./inc/config.php"); // costruzione query $query="SELECT * FROM pagamenti WHERE id_socio = '$id' ORDER BY data DESC"; // risultato query $risultato=mysql_query($query,$db); echo "<br><br> <table width='60%' align='center'> <tr><th colspan='5' align='left'>Pagamenti</th></tr> <tr> <th align='left'>id</th> <th align='left'>Data Versamento</th> <th align='left'>Causale</th> <th align='left'>Descrizione</th> <th align='left'>Importo</th> </tr> "; // Riga contenente i dati $totale=0; while($riga = mysql_fetch_array($risultato)){ $id_socio=$riga['id_socio']; $importo=$riga['importo']; $totale=$totale+$importo; echo " <tr> <td>".$riga['id_socio']."</td> <td>".$riga['data']."</td> <td>".$riga['causale']."</td> <td>".$riga['descrizione']."</td> <td>€". $riga['importo']."</td> </tr> "; } echo" <tr><td> </td></tr> <tr><td> </td></tr> <tr> <td colspan='5'><b>Totale Versato: € ".$totale.",00</b></td> </tr> </table><br></div>"; mysql_close($db); } ?>
non va
mi si carica sempre a parte
francodace.altervista.org
se vuoi provare, fai l'iscrizione ed io ti do i privilegi per accedere alla pagina in esame.ciao
-
Intendevo così:
[PHP]<form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">[/PHP]
-
<br><br> <div id="visualizza_socio" align="center"> VISUALIZZA SOCIO <br><br> <form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>"> Scegliere un cognome dalla lista: <select id="s_cognome" name="s_cognome"> <?php require_once "./inc/config.php"; $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die('Errore nella connessione. Verificare i parametri nel file config.php'); mysql_select_db($db_name, $db) or die('Errore nella selezione del database. Verificare i parametri nel file config.php'); // costruzione query $query="SELECT * FROM `elenco_soci` ORDER BY `cognome`"; $risultato=mysql_query($query,$db); while($riga = mysql_fetch_array($risultato)){ $s_cognome=$riga['cognome']; echo "<option value = $s_cognome > $s_cognome </option>"; // mancava il tag di chiusura } ?> </select> <input name="submit" type="submit" value="Invio"> </form> </div> <?php if($_POST["s_cognome"]){ require_once "./inc/config.php"; $cognome=$_POST['s_cognome']; // connessione al database $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die("Errore nella connessione. Verificare i parametri nel file ./inc/config.php"); // seleziona database mysql_select_db($db_name, $db) or die("Errore nella selezione del database. Verificare i parametri nel file ./inc/config.php"); // costruzione query $query="SELECT * FROM elenco_soci WHERE cognome = '$cognome'"; // risultato query $risultato=mysql_query($query,$db); echo "<div id='cerca_socio'> <table width='60%' align='center'> <tr><th colspan='7' align='left'>Dati Anagrafici</th></tr> <tr> <th align='left'>id</th> <th align='left'>Data Iscrizione</th> <th align='left'>Data Nascita</th> <th align='left'>Cognome</th> <th align='left'>Nome</th> <th align='left'>Tel. Abitazione</th> <th align='left'>Tel. Cellulare</th> </tr> "; // Riga contenente i dati while($riga = mysql_fetch_array($risultato)){ $id=$riga['id_socio']; $data_iscrizione=date('d/m/Y', $riga['data_iscrizione']); $data_nascita=date('d/m/Y', $riga['data_nascita']); echo " <tr> <td>".$riga['id_socio']."</td> <td>".$data_iscrizione."</td> <td>".$data_nascita."</td> <td>".$riga['cognome']."</td> <td>".$riga['nome']."</td> <td>".$riga['telefono_abitazione']."</td> <td>".$riga['telefono_cellulare']."</td> </tr> </table> "; } // connessione al database $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die("Errore nella connessione. Verificare i parametri nel file ./inc/config.php"); // seleziona database mysql_select_db($db_name, $db) or die("Errore nella selezione del database. Verificare i parametri nel file ./inc/config.php"); // costruzione query $query="SELECT * FROM pagamenti WHERE id_socio = '$id' ORDER BY data DESC"; // risultato query $risultato=mysql_query($query,$db); echo "<br><br> <table width='60%' align='center'> <tr><th colspan='5' align='left'>Pagamenti</th></tr> <tr> <th align='left'>id</th> <th align='left'>Data Versamento</th> <th align='left'>Causale</th> <th align='left'>Descrizione</th> <th align='left'>Importo</th> </tr> "; // Riga contenente i dati $totale=0; while($riga = mysql_fetch_array($risultato)){ $id_socio=$riga['id_socio']; $importo=$riga['importo']; $totale=$totale+$importo; echo " <tr> <td>".$riga['id_socio']."</td> <td>".$riga['data']."</td> <td>".$riga['causale']."</td> <td>".$riga['descrizione']."</td> <td>€". $riga['importo']."</td> </tr> "; } echo" <tr><td> </td></tr> <tr><td> </td></tr> <tr> <td colspan='5'><b>Totale Versato: € ".$totale.",00</b></td> </tr> </table><br></div>"; mysql_close($db); } ?>
Avevo sbagliato a scrivere, ma come ti dicevo, non va
mi si carica sempre a parte
ciao
-
Torniamo alla domanda di prima allora:
Ma il div centrale te lo carica tramite POST? O tramite GET?
-
Scusa, ma esiste un modo per inviare direttamente alla query il contenuto della select al cambiare della voce selezionata, anzichè inviare tramite post?
Per quanto riguarda il div centrale viene caricato da questo menù:
<?php if ($_SESSION['actived'] ==1){ if($_SESSION['stato'] > 3 && $_SESSION['stato'] < 7){ ?> <div id="menu_socio" class="style_linea"> <h5>Iscrizione Socio</h5> <ul> <li><a href="#" onclick="Richiesta('inserisci_socio.php')">Inserisci Socio</a></li> <li><a href="#" onclick="Richiesta('visualizza_socio.php')">Visualizza Socio</a></li> <li><a href="#" onclick="Richiesta('modifica_socio.php')">Modifica Socio</a></li> <li><a href="#" onclick="Richiesta('cancella_socio.php')">Cancella Socio</a></li> </ul> </div> <? }}?>
la funzione Richiesta() si trova in un file esterno .js:
function Richiesta(Stringa){ //Ritorna l'URL della pagima scelta nel menu if (Stringa.length > 0) { var url = Stringa; XMLHTTP = RicavaBrowser(CambioStato); XMLHTTP.open("GET", url, true); XMLHTTP.send(null); } else { document.getElementById("col-contenuti").innerHTML = "visualizza_rosaria.php"; } }
non è tutta farina del mio sacco, ma ho studiato come utilizzare tale funzione per inserila nelle mie pagine.
Ciao
-
errata corrige
document.getElementById("col-contenuti").innerHTML = "";
-
Ah. Ecco comanda il Js.
L'url della pagina che ti visualizza quel contenuto è sempre index.php, giusto? Non hai append data (index.php?qualcosa=qualcosaltro), giusto?
Scusa, ma esiste un modo per inviare direttamente alla query il contenuto della select al cambiare della voce selezionata, anzichè inviare tramite post?
Certo che si puo', ma non con PHP, ti servirà un Javascript o AJAX. Ma questa non è la sezione adatta se intendi farlo così.
-
1 giusto;
2 l'importante è risolvere il problema, con qualsiasi metodo, se poi non è possibile in questo mi puoi indicare dove posso trovare la soluzione?
Comunque grazie di tutto, sei stato molto gentile.
-
Allora se vuoi affrontarlo con PHP ti basta inserire nel form un input hidden con value visualizza_socio.php che poi ti recuperi e passi come caricamento contenuto. Ma a questo punto ti si ricaricherà la pagina....se lo vuoi affrontare così come hai iniziato tramite Js puoi dare un'occhiata in scripting lato client. Se non trovi l'argomento specifico puoi aprire un thread apposito.
Ti consiglio pero' di fare un riepilogo generale di come ti si caricano le pagine e dello script che usi per caricare il contenuto così che gli altri utenti possano darti il miglior aiuto possibile.
-
Ho postato in scripting lato client in questo modo:
tag select e database Ciao a tutti, premetto che ho postato la stessa domanda nella sezione php e mysql e dopo che mi hanno gentilmente risposto ho pensato che forse questa è la sezione più giusta. Avrei bisogno del vostro aiuto: ho una pagina 'index.php' costruita con layout tre colonne + header e footer. nel div centrale 'col-contenuti' carico una pagina 'visualizza_socio.php' che contiene un tag select 'cerca-socio'. Questa tag viene popolato da cognomi presenti nel db tabella 'elenco_soci'. Vorrei ottenere, sulla base della scelta effettuata, nella stessa pagina, direttamente sotto il tag select, alcunii campi reletivi al cognome scelto nella select. Ho provato in vari modi e mi sono accorto che non riesco ad assegnare ad una variabile il cognome scelto nel tag select. Come posso ovviare? Grazie
credi che vada bene?
Comunque ancora grazie per l'aiuto, ciao
-
Si va bene, ti ho messo il link a questa discussione se magari servono maggiori dettagli.
Siam sempre quì comunque se servirà svilupparlo senza script.
-
ok grazie.
-
Ciao, volevo comunicarti che ho risolto con ajax.
Grazie di tutto e alla prossima.
-
Magnifico.
Ci si legge in giro.