Back to top

Autore Topic: gestione option di selezione  (Letto 5237 volte)

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
gestione option di selezione
« il: 29 Mag 2009, 00:35:31 »
ciao, come ho già scritto in un altro post sto cercando di sviluppare un componente per fare un preventivo online.
Il problema è questo, la mia tabella preventivo contiene tre campi varchar, nel primo campo inserisco il nome dell'articolo, nel secondo campo la dimensione dell'articolo e nel terzo campo il colore. Il back-end per inserire gli articoli l'ho creato, mentre nel front-end vorrei che ci fossero tre campi object di selezione, dove l'utente sceglie il nome dell'articolo, e nella seconda object ha la possibilità di scegliere solo tra le possibili dimensioni per l'articolo scelto, e cosi anche nella terza... spero di essermi spiagato abbastanza bene, qualcuno potrebbe darmi qualche dritta???? per ogni scelta andrebbe fatto un controller diverso  :-[ ??? grazie mille!!!!!
« Ultima modifica: 03 Giu 2009, 15:44:32 da donato.chpp »
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

teakor

  • Visitatore
Re:gestione object di selezione
« Risposta #1 il: 29 Mag 2009, 08:22:57 »
Ciao, in poche parole vuoi creare delle così dette select dipendenti. Per fare ciò devi usare javascript, in modo che quando selezioni una object della prima select, in automatico ti visualizza la seconda select collegata all'oggetto della prima. Se vuoi un esempio, in virtuemart, nella parte di registrazione utente, ce n'è una, che quando selezioni una nazione di visualizza solo le città riferite a quello stato.

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #2 il: 29 Mag 2009, 22:30:10 »
teakor grazie per la risposta, è esattamente quello che cerco, ora do un'occhiata al componente per cercare di capire.... grazie ancora, buona serata
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #3 il: 29 Mag 2009, 23:11:46 »
rieccomi già teakor, ho un po di difficoltà a capire dal componente, sto continuando a vederlo, però dai file perchè ho anche qualche problema nell'installazione, hai qualche altra dritta??? te ne sarei grato, grazie  ;D
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

teakor

  • Visitatore
Re:gestione object di selezione
« Risposta #4 il: 30 Mag 2009, 08:29:38 »
Per quanto riguarda l'installazione segui le istruzioni che ti da. Se non erro dovrebbe tirarti fuori degli errori perchè non ti decomprime alcuni zip, che dovrebbero essere admin_file e front_file se non vado errato. Una volta che ti ha installato il componente e rimane in attesa della tua scelta, cioè se installarlo con o senza file di prova, decomprimi sul tuo pc i relativi file e caricali nelle apposite cartelle via ftp. Comunque prova a cercare qualcosa qui sul forum se c'è una guida per l'installazione del componente oppure cercalo sulla comunità italiana di virtuemart.

Una volta fatto tutto devi andare, lato frontend nella pagina di registrazione nuovo utente, e fai visualizza sorgente. Da lì vedi il codice javascript che devi usare. Se guardi dentro i sorgenti in php, ti perdi solamente.

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #5 il: 30 Mag 2009, 09:05:30 »
grazie teakor, molto gentile  ;)
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #6 il: 30 Mag 2009, 12:07:39 »
scusa teakor mi sta facendo un po ammattire  :-\
io da administrator metto gli articoli, da front-end devo visualizzare i tre object e consentire la scelta. come potrei fare, prima leggo tutti i dati del database con php e poi li visualizzo tramite object con js????
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

teakor

  • Visitatore
Re:gestione object di selezione
« Risposta #7 il: 30 Mag 2009, 12:13:56 »
Piò meno.

Questo è il link ad demo on line di virutemart.

http://demo.vmitalia.net/vm11/index.php?option=com_virtuemart&page=shop.registration&Itemid=2&vmcchk=1&Itemid=2

Visualizza il codice sorgente di questa pagina e cerca al suo interno "Nazione" da nazione in poi ti viene mostrato come realizzare quello che chiedi.

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #8 il: 30 Mag 2009, 12:39:37 »
ottimo grazie teakor, nel frattempo stavo provando a farlo tramite php con get, in questo modo

<form action="index.php" method="get" name="sendForm">
<select name="articolo">

<option value="articolo"></option>
<?php
if(count($this->rows) == 0) {
echo JText::_('Nessuna selezione possibile');
} else {
foreach($this->rows as $r) {
?>
<?php
echo "<option value=\"". $r->articolo ."\">". $r->articolo."</option>"; ?>
<?php
}
}
?>
</select>
   
<select name="dimensione">

<option value=""></option>
<?php
if(count($this->rows) == 0) {
echo JText::_('Nessuna selezione possibile');
} else {
foreach($this->rows as $r) {
?>
<?php
$tipo = $_GET['articolo'];
if($r->volantinaggio == $tipo)
echo "<option value=\"". $r->dimensione ."\">". $r->dimensione."</option>"; ?>
<?php
}
}
?>
</select>
</form>

nel database ho id-articolo-dimensione-colore

quando lo installo e da admin inserisco i valori nel front end mi fa vedere solamente la prima object e la seconta la fa vedere ma vuota..

si può fare anche in questo modo???
dove sbaglio??? grazie ancora per la disponibilita!!
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re:gestione object di selezione
« Risposta #9 il: 30 Mag 2009, 19:09:34 »
nono in PHP lo devi fare refreshando la pagina.

Ti conviene farlo in JS:

Codice: [Seleziona]
onChange='var x=document.getElementById("formid").value; document.getElementById(x).style.display= "inline"; if ( x == "artid" ) { document.getElementById("catid").style.display= "none";}  if ( x == "catid" ) { document.getElementById("artid").style.display= "none";}'

[spartano]

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #10 il: 01 Giu 2009, 15:36:50 »
ok odino, mi sto cominciando a raccapezzare  ;D
se la mia tabella del componente ha articolo-dimensione-colore... come faccio con il js a recuperare questi dati dal template se la mia view.html.php ha
$this->assignRef('rows', $events);
gia potrei chiamare i dati da rows???
grazie per la pazienza  :o


cioè per spiegarmi meglio, prima di poter visualizzare i dati con js li dovrei recuperare con il php???
« Ultima modifica: 01 Giu 2009, 15:49:17 da donato.chpp »
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re:gestione object di selezione
« Risposta #11 il: 01 Giu 2009, 16:45:24 »
assegni una classe corrispondente all'id

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #12 il: 01 Giu 2009, 16:48:17 »
non mi fucilare  ;D
in che senso???

e completamente sbagliato fare in questo modo?

<?php
$k = 0;
$n=count($this->rows);
for($i=0 ; $i < $n; $i++) {
$row =& $this->rows[$i];
?>
<div class="preventivo">
<script language="javascript" type="text/javascript">
var x.document.getElementById("rows").value;
document.write(x.citta);
</script>
<?php } ?>

senza calcolare il document.write che l'ho messo solo per verificare se mi stampava qualcosa, ma ovviamente niente...

sono fuori strada????   ???
« Ultima modifica: 01 Giu 2009, 16:58:22 da donato.chpp »
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re:gestione object di selezione
« Risposta #13 il: 01 Giu 2009, 16:57:38 »
Codice: [Seleziona]
______ ______ ______ _____
|      |      |      |     |
| Prod | Color| Dimen| ID  |
|______|______|______|_____|
 ______ ______ ______ _____
|      |      |      |     |
| Scopa| Blu  | 30cm | 1   |
|______|______|______|_____|
 ______ ______ ______ _____
|      |      |      |     |
| Colla| Verde| 10cm | 2   |
|______|______|______|_____|

assegni, dato che devi richiamare il tutto via JS, al div che conterrà le righe del record "scopa", l'id 1 come classe.

Esempio:

Codice: [Seleziona]
<div class="itemId_1">
    ...scopa...
</div>
<div class="itemId_2">
    ...colla...
</div>

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #14 il: 01 Giu 2009, 17:14:29 »
ho fatto una prova in questo modo:

<div class="id_1" id="id_1">
<?php
$k = 0;
$n=count($this->rows);
for($i=0 ; $i < $n; $i++) {
$row =& $this->rows[$i];
?>
<script type="text/javascript">
x = document.getElementById("id_1").articolo;
document.write(x);
</script>
<?php
}
?>
</div>

però mi scrive undefined nel front end dove vorrei visualizzarlo... questa è una prova che sto facendo per capire come prelevare e scrivere i dati poi pensero alla object. prima non mi criveva nulla ora almeno undefined esce  :D
grazie ancora odino
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #15 il: 03 Giu 2009, 09:43:26 »
ragazzi un aiuto???? please  ;)
non riesco a capire come far leggere a js i dati che poi devo far vedere come option select.
tra l'altro se inserisco diversi articoli con lo stesso nome (ma dimensioine diversa) me li fa vedere ripetuti, invece io vorrei me li facesse vedere una sola volta, come se facessi una select da database
grazie
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

teakor

  • Visitatore
Re:gestione object di selezione
« Risposta #16 il: 03 Giu 2009, 10:12:34 »
Posta il codice java che hai creato.

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #17 il: 03 Giu 2009, 11:04:19 »
innanzitutto grazie per la risposta teakor  ;D
so che il codice è completamente sbagliato, però ho cominciato a vedere da poco js

ti posto tutto il codice della form

<form action="index.php" method="post" name="provaForm">

<select name="articolo">
<option value=""></option>
<?php
if(count($this->rows) == 0) {
   echo JText::_('Nessun Nome');
} else {
   foreach($this->rows as $r) {
?>
<script type="text/javascript">
document.write("<?php echo '<option value=\''. $r->articolo .'\'>'. $r->articolo.'</option>'; ?>");
</script>

<?php
}
}
?>
</select>

« Ultima modifica: 03 Giu 2009, 11:05:56 da donato.chpp »
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

teakor

  • Visitatore
Re:gestione object di selezione
« Risposta #18 il: 03 Giu 2009, 11:14:55 »
Citazione
document.write("<?php echo '<option value=\''. $r->articolo .'\'>'. $r->articolo.'</option>'; ?>");

prova a cambiarlo in:

Codice: [Seleziona]
document.write("<option value='<?php echo $r->articolo;?>'><?php echo $r->articolo;?></option>");code]

Offline donato.chpp

  • Esploratore
  • **
  • Post: 139
    • Mostra profilo
Re:gestione object di selezione
« Risposta #19 il: 03 Giu 2009, 11:25:27 »
ottimo teakor, funziona perfettamente, però io vorrei anche che due articoli uguali me li facesse vedere una sola volta.ad es:

articolo        dimensione        colore
bicchiere          x                 blu
bicchiere          y                 verde
bicchiere          z                 nero
carta              l                 bianco

la prima option mi dovrebbe far vedero solo bicchiere e carta, la seconda a seconda della scelta mi dovrebbe far vedere o x,y,z(nel caso in cui venga scelto bicchiere) o l(nel caso in cui venga scelta carta...
come potrei fare???andrebbe inserita una funzione nel models??? grazie ancora   :-\
quello che gli occhi vedono e le orecchie sentono la mente crede!!!!

 



Web Design Bolzano Kreatif