WebSite X5Help Center

 
Tommaso Tarallo
Tommaso Tarallo
User

Modulo di Contatto: come visualizzare una lista di voci da database  it

Автор: Tommaso Tarallo
Просмотрено 3385, Подписчики 6, Размещенный 0  

Salve,

con il Modulo di Contatto. come posso visualizzare una lista di voci da letti da una tabella di un databade?

Grazie!

Размещено
31 Ответы - 5 Полезно - 1 Корректно
A. Kris
A. Kris
User

non credo che si possa far visualizzare surprised

Читать больше
Размещено От A. Kris
Giorgio C.
Giorgio C.
User

Recuperi i valori dal database, e tramite jquery li inserisci nei campi di imput.

Esempio da inserire in modulo html nella pagina del modulo di contatto (php) il div in grassetto è da personalizzare con quello del tuo modulo.

Ciao

<?php $A="nuovo testo"; //valore che recuperi dal database
?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#imObjectForm_2_1").val("<?php echo $A; ?>");
});
</script>

Читать больше
Размещено От Giorgio C.
A. Kris
A. Kris
User

@SitiWeb, fammi sapere , sei riuscito?

Читать больше
Размещено От A. Kris
Tommaso Tarallo
Tommaso Tarallo
User
Автор

ciao ragazzi, grazie Giorgio domani lo proverò

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

però io volevo una lista a discesa di valori.. In pratica sono una lista di materie da scegliere caricate in una tabella di database

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

dall'esempio ho visto che il valore del testo predefinito si può modificare e questo non va bene...

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

grazie Giorgio, perfetto: quale è il codice?

cosa indica il valore 4 della lista?

Читать больше
Размещено От Tommaso Tarallo
Giorgio C.
Giorgio C.
User

Il 4 è il numero di campi della lista

questo è il codice, per il recupero dal db devi pensarci tu. La funzione button è da togliere perchè solo dimostrativa (prima e dopo), basta la ready per farlo funzionare.

Ciao

<?php

$B = array("nuovo testo 1","nuovo testo 2","nuovo testo 3","nuovo testo 4");
$a = count($B);
?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".bt").click(function(){
$("#imObjectForm_2_1").val("<?php echo $a; ?>");
$("#imObjectForm_2_1").attr('readonly', true);

<?php
for ($i = 0; $i <= $a; $i++) {
$b=$B[$i];  
?>
$("#imObjectForm_2_2").append("<option value=i><?php echo $b; ?></option>");
<?php }?>
});});</script>


<button class=bt type="button">Clicca per inserire la lista</button>

Читать больше
Размещено От Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Автор

Grazie mille Giorgio per il tuo prezioso aiuto!

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

Stavo pensando che questo tuo primo codice:

Giorgio C.
Recuperi i valori dal database, e tramite jquery li inserisci nei campi di imput. Esempio da inserire in modulo html nella pagina del modulo di contatto (php) il div in grassetto è da personalizzare con quello del tuo modulo. Ciao <?php $A="nuovo testo"; //valore che recuperi dal database ?> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script> $(document).ready(function(){ $("#imObjectForm_2_1").val("<?php echo $A; ?>"); }); </script>

mi potrebbe servire per inviare l'id dell'utente registrato in automatico ed inserirlo in una tabella:

come poso fare a nascondere questo campo con il css?

Grazie!

Читать больше
Размещено От Tommaso Tarallo
Giorgio C.
Giorgio C.
User

Non capisco. L'id non viene mandato dal modulo email.

Читать больше
Размещено От Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Автор

mi spiego meglio Giorgio: io ho due tabelle "docenti" (creata con la regitraazione automatica) e "avvisi" (creata dal modulo contatto).

Un docente che si registra in automatico accede alla pagina protetta del modulo di contatto ed inserisce l'avviso.

Grazie al campo nascosto, posso inviare sia l'id che il nome del docente nella tabella "avvisi" così da poter visualizzare in un'altra pagina pubblica la lista degli avvisi.

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

naturalmente l'id ed il nome dell'utente li prendo dalla variabile di sessione

Читать больше
Размещено От Tommaso Tarallo
Giorgio C.
Giorgio C.
User

...quindi non hai bisogno di inviare nulla, sono sempre presenti!

Читать больше
Размещено От Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Автор
Giorgio C.
...quindi non hai bisogno di inviare nulla, sono sempre presenti!

mi serve per poterlo integrare nel modulo di contatto di website invece di creare un form separato.

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

inserito in un oggetto codice html

Читать больше
Размещено От Tommaso Tarallo
Giorgio C.
Giorgio C.
User

per nascondere un elemento usa il codice qui sotto all'interno della funzione ready peronalizzando il div: esempio

Ciao

$("#imObjectForm_2_1").hide();

Читать больше
Размещено От Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Автор

grazie mille, Giorgio!

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор
Giorgio C.
per nascondere un elemento usa il codice qui sotto all'interno della funzione ready peronalizzando il div: esempio Ciao $("#imObjectForm_2_1").hide();

Giorgio, c'è un problema: se nascondo il cmapo, poi non si memorizza il valore su database.

forse meglio nasconderlo con il css: come si fà?

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор
A. Kris
@SitiWeb, fammi sapere , sei riuscito?

ci sono riusciuto Kris, usando il codice css per nasconderlo:

<?php $A="valore"; //valore che recuperi dal database
?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#imObjectForm_2_1").val("<?php echo $A; ?>");
});
</script>


<style>
div#imObjectForm_2_1_container {
display: none;
}
</style>

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор
Giorgio C.
Il 4 è il numero di campi della lista questo è il codice, per il recupero dal db devi pensarci tu. La funzione button è da togliere perchè solo dimostrativa (prima e dopo), basta la ready per farlo funzionare. Ciao <?php $B = array("nuovo testo 1","nuovo testo 2","nuovo testo 3","nuovo testo 4"); $a = count($B); ?> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script> $(document).ready(function(){ $(".bt").click(function(){ $("#imObjectForm_2_1").val("<?php echo $a; ?>"); $("#imObjectForm_2_1").attr('readonly', true); <?php for ($i = 0; $i <= $a; $i++) { $b=$B[$i];   ?> $("#imObjectForm_2_2").append("<option value=i><?php echo $b; ?></option>"); <?php }?> });});</script> <button class=bt type="button">Clicca per inserire la lista</button>

Ciao Giorgio, vedi che all'intenro del ciclo for deve essere "$i < $a" alterimenti mette una voce vuota perchè sborda nell'array. Ho tolto l'azione sul pulsante e inserito quindi questo codice:

<?php

$B = array("nuovo testo 1","nuovo testo 2","nuovo testo 3","nuovo testo 4");
$a = count($B);
?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){

$("#imObjectForm_2_1").val("<?php echo $a; ?>");
$("#imObjectForm_2_1").attr('readonly', true);

<?php
for ($i = 0; $i < $a; $i++) {
$b=$B[$i];
?>
$("#imObjectForm_2_2").append("<option value=i><?php echo $b; ?></option>");
<?php }?>
});</script>

ecco il link demo:

http://sitiwebapp.16mb.com/dance/file.php

Il problema di questo tuo codice che se invio il form su memorizzazione su database mi meorizza smepre "i".

inoltre per il campo "Lista a discesa" Website mi obbliga almeno ad inserire almeno un "valore obbligatorio"

come si può aggirare il problema?

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

Giorgio, hai letto il post? Grazie!

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

in pratica si deve inserirte la variabile php al posto di i

$("#imObjectForm_2_2").append("<option value=i><?php echo $b; ?></option>");

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

ma non so come si fà---

Читать больше
Размещено От Tommaso Tarallo
Giorgio C.
Giorgio C.
User
SitiWeb App
$("#imObjectForm_2_2").append("<option value=i><?php echo $b; ?></option>");

Si è un'errore. Sostituisci con $("#imObjectForm_2_2").append("<option value><?php echo $b; ?></option>");

Per eliminare quelli preesistenti aggiungi prima del ciclo for

$("#imObjectForm_2_2").children("option").remove();

Ciao

Читать больше
Размещено От Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Автор
Giorgio C.
SitiWeb App $("#imObjectForm_2_2").append("<option value=i><?php echo $b; ?></option>"); Si è un'errore. Sostituisci con $("#imObjectForm_2_2").append("<option value><?php echo $b; ?></option>"); Per eliminare quelli preesistenti aggiungi prima del ciclo for $("#imObjectForm_2_2").children("option").remove(); Ciao

Giorgio, adesso non si memorizza niente

il valore della variabile php corrente  $b deve comparire due volte: una volta associata a valure e l'altra volta visualizzata con echo...lì è l'errore ma non so come scriverlo

Читать больше
Размещено От Tommaso Tarallo
Tommaso Tarallo
Tommaso Tarallo
User
Автор

la sintassi dovrebbe essere così

.append("<option value='<?php echo $b; ?>'<?php echo $b; ?></option>");

ma non funziona...il problema sarà le virgolette interne annidate

Читать больше
Размещено От Tommaso Tarallo
Giorgio C.
Giorgio C.
User

adesso non posso provare ma comunque c'é un'errore perché manca una >

 .append("<option value='<?php echo $b; ?>'><?php echo $b; ?></option>");

Читать больше
Размещено От Giorgio C.
Tommaso Tarallo
Tommaso Tarallo
User
Автор

perfetto Giorgio, il codice è esatto e funziona. Grazie mille!

Читать больше
Размещено От Tommaso Tarallo