Ciao a tutti!
Sul mio sito php ho inserito un codice ajax che mi permetta di selezionare la sottocategoria dopo aver scelto la categoria prendendole da DB.
Il mio problema è che, dopo aver inviato il form, non mi recupera il codice della sottocategoria che dovrebbe essere rappresentato dal valore della select .... e non riesco a capire perchè!!!
Ecco i codici:
File con il form:
Codice PHP:
<form name='form' action='aggiungi_cat.php' method='post' enctype='multipart/form-data'>
<table align=center border=0 cellpadding=10>
<tr><td align=center>
<?PHP
include ('ajax2.php');
?>
</td></tr>
<tr><td align=center><input type='submit' name='aggiungi' id='aggiungi' value='Salva e aggiungi'><input type='submit' name='termina' value='Salva e termina' id='termina'></td></tr></table>
</form>
File ajax2.php:
Codice PHP:
<?php
include('conn.inc.php');
include('select.class2.php');
$obj = new select();
$l1 = $obj->getL1();
?>
<script type="text/javascript" src='ajax.js'>
</script>
<div id="content">
<div id="label1">
[b]Categorie[/b]
</div>
<div id="select1">
<select name="categorie" id="categorie" onchange="loading()">
<option value="sel" selected="selected">Seleziona una categoria:</option>
<?
for($x=0;$x<count($l1);$x++){
?>
<option value="<?=$l1[$x]['id_cat']?>"><?=$l1[$x]['descrizione']?></option>
<?
}
?>
</select>
</div>
</td></tr>
<tr><td align=center>
<div id="label2">
[b]Sottocategorie[/b]
</div>
[i]Nel caso in cui non ci siano sottocategorie da associare, si selezioni 'Nessuna'[/i]
<div id="select2">
<select name="sottocategorie" id="sottocategorie" disabled>
<option value="sel" selected="selected">Seleziona una sottocategoria:</option>
</select>
</div>
</div>
File select.class2.php
Codice PHP:
<?php
class select{
function select(){
}
function getL1($id=''){
$prodotto=$_SESSION['codice_prod'];
if(!empty($id)){
$sSQL = "SELECT * FROM categorie WHERE id_cat = $id";
}else{
/*$sSQL = "SELECT * FROM categorie
WHERE id_cat<>(SELECT cod_cat FROM cat_prod WHERE cod_prod=$prodotto)
";*/
$sSQL = "SELECT * FROM categorie order by descrizione";
}
$ris = mysql_query($sSQL);
while($row = mysql_fetch_assoc($ris)){
$sql="SELECT * FROM cat_prod WHERE cod_prod=$prodotto";
$r = mysql_query($sql);
$presenza=0;
while($dati = mysql_fetch_assoc($r)){
if ($dati["cod_cat"]==$row["id_cat"])
{
$presenza=1;
}
}
if ($presenza==0)
{
$list[] = array('id_cat' => $row["id_cat"],
'descrizione' => $row["descrizione"]);
}
}
return $list;
}
function getL2($id){
$sSQL = "SELECT * FROM sottocategorie WHERE cod_cat = $id Order By descrizione";
$ris = mysql_query($sSQL);
$pres=0;
while ($row = mysql_fetch_assoc($ris)) {
$descr=$row["id_sott"].$row["descrizione"];
$cod=$row["id_sott"];
$list[] = array('id_sott' => "$cod",
'descrizione' => $descr);
$pres=1;
}
if ($pres==0)
{
$list[] = array('id_sott' => 0,
'descrizione' => 'Nessuna');
}
return $list;
}
}
?>
File get.php
Codice PHP:
<?
include('conn.inc.php');
include('select.class2.php');
$id = $_REQUEST['id'];
$obj = new select();
$l1 = $obj->getL1($id);
$Js = '';
for($x=0; $x<count($l1); $x++){
$l2 = $obj->getL2($l1[$x]['id_cat']);
for($y=0;$y<count($l2);$y++){
if($y < (count($l2)-1)){
$end = ",";
}else{
$end = "";
}
$Js .= $l2[$y]['id_sott']."-".$l2[$y]['descrizione'].$end;
}
}
//echo "text";
echo $Js;
?>
Qualcuno di voi riesce ad aiutarmi? non so più dove sbattere la testa....