Select dinamiche in php

victor@rt

Nuovo Utente
25 Feb 2009
8
0
0
Salve tempo fa mi rivolsi al forum per un problema che avevo riguardo a una semplice form di cancellazione che avevo creato.Vi rispiego il problema , esprimendomi meglio, e nella speranza che qualcuna riesca a darmi una mano.
Praticamente ho in javascript un a funzione che mi popola una select secondo un criterio precedente, vi spiego:

Attraverso una form con due select devo scegliere determinati prodotti, per esempio ho una categoria A una B e una C, quando clicco su uno di essi alla categoria A nella seconda select mi deve comparire D ed E mentre se premo B mi deve comparire F e G se invece premo C mi deve comparire H ed E(queste tutte nella seconda select).
Fin qui tutt ok.Ora devo effettuare una ricerca, e voglio che quando seleziono A e la sottocategoria D devo poter cancellare tutto quello che c'è in A di D attraverso query e php.tutto questo mi va bene e mi funziona ma praticamente il mio problema è che una volta effettuata la ricerca e trovato tutto io non posso cancellare nulla perchè la form mi viene azzerata Mi ritornano i valori predefiniti e anche se vedo quello che voglio cancellare non posso cancellarlo...Spero di essere stato chiaro vi posto anche il codice così vi rendo meglio l'idea:
--------------------------------------------------------------------
<script type="text/javascript">
//Dichiaro l'array myMenu'
var myMenu = new Array();
//Definisco le voci del menu'
myMenu['cat_a'] = new Array(); //Prima categoria
myMenu['cat_a']['value1'] = '->tipo';
myMenu['cat_b'] = new Array(); //Seconda categoria
myMenu['cat_b']['value8'] = 'Elettriche';
myMenu['cat_b']['value9'] = 'A scoppio';
myMenu['cat_c'] = new Array(); //Seconda categoria
myMenu['cat_c']['value10'] = '->tipo';
myMenu['cat_c']['value11'] = 'Soffiatori manuale';
myMenu['cat_c']['value12'] = 'Soffiatore a spalla';
myMenu['cat_d'] = new Array();
myMenu['cat_d']['value13'] = '->tipo';
myMenu['cat_d']['value14'] = 'elettrici';
myMenu['cat_d']['value15'] = 'A scoppio';


function popola_select(){
var select = document.forms['myForm'].mySelect; //Recupero la SELECT
var subselect = document.forms['myForm'].mySubSelect; //Recupero la seconda SELECT

// Recupero la categoria selezionata
var cat = select.options[select.selectedIndex].value;

//Controllo che sia stata selezionata una categoria valida
if(cat.length != 0){
//Azzero il contenuto della seconda select
for (var i = subselect.length - 1; i >= 0; i--)
subselect.remove(i);

//Popolo la seconda Select
for(value in myMenu[cat]){
//Creo il nuovo elemento OPTION da aggiungere nella seconda SELECT
var NewOpt = document.createElement('option');
NewOpt.value = value; // Imposto il valore
NewOpt.text = myMenu[cat][value]; // Imposto il testo

//Aggiungo l'elemento option
try{
subselect.add(NewOpt, null); //Metodo Standard, non funziona con IE
}catch(e){
subselect.add(NewOpt); // Funziona solo con IE
}
}

}
}
</script>
</head>
<body>
<?php
echo '<form name=\"myForm\" method=\"post\" action=\" echo '$_SERVER['PHP_SELF']'; ?>\">';
echo '<table border=\"1\" cellpadding=\"2\" cellspacing=\"2\" align=\"center\" width=\"600\">';
echo '<tr><td colspan=\"2\" align=\"center\"><img src=\"../images/alberi_e_siepi.gif\"></td></tr>';
echo '<tr><td colspan=\"2\" align=\"center\">';
echo '<select name=\"mySelect\" onChange=\"popola_select()\">';
echo '<option value=\"\">-> Attrezzi</option> ';
echo '<option value=\"cat_a\">motoseghe</option>';
echo '<option value=\"cat_b\">Tagliasiepi</option>';
echo '<option value=\"cat_c\">Soffiatori/Aspiratori</option>';
echo '<option value=\"cat_d\">Biotrituratori</option>';
echo '<option value=\"accessori\">Accessori</option>';
echo '</select>';
echo '</td></tr>';
echo '<tr><td align=\"center\" colspan=\"2\">';
echo '<select name=\"mySubSelect\"></select>';
....
//Dichiaro le variabili per il confronto
$prima = ($_POST['mySelect']);
$seconda = ($_POST['mySubSelect']);

//Motoseghe elettriche
//Condizioni e visualizzazione
if (($prima == 'cat_a') && ($seconda == 'value2'))
{
$ricevuta = mysql_query (" SELECT * FROM giardinaggio WHERE (motoseghe = 'elettriche') ");
if (!$ricevuta)
{
echo ('<p> Errore di visualizzazione </p>');
}
//visaulizzo i dati
echo "<table border=\"0\" width=\"500\" align=\"center\">";
while($rows = mysql_fetch_array($ricevuta))
{
echo "<tr>";
echo "<td><img src=\"../public/" .$rows['foto'] ." \"></td>";
$vet = explode(',',$rows['scheda_tecnica_Albero']);
if ($vet[0]!= " ")
{
echo "<td>" . stripslashes($vet[0]) . "</td>";
}
//checkbox per la selezione dell'oggetto
echo "<td><input type=\"checkbox\" name=\"canc\" value=\" ".$rows['id_giardinaggio']." \"></td>";
....
prosegue ma penso che vi ho dato abb dettagli. Spero mi possiate aiutare in qualke modo vi ringrazio in anticipo.Un saluto a tutto il forum e allo staff
 

Discussioni simili