Ma se vedi il sorgente della pagina (index2) non c'è niente nelle select? giusto per prova, togli gli script javascript
Ma se vedi il sorgente della pagina (index2) non c'è niente nelle select? giusto per prova, togli gli script javascript
Guarda, ho provato il codice e sembra funzionare...Che problema hai?
Giusto una cosa, nel tuo select2.php devi modificare le chiamate, visto che adesso non usi pi� $_POST
Codice PHP:
if(isset($_POST['city']))
{
echo $opt->ShowCap($_POST['city']);
die;
}
dici cos�?
<?php
include_once 'select.class2.php';
$opt = new SelectList();
if(isset($prov))
{
echo $opt->ShowComuni($prov);
die;
}
if(isset($comune))
{
echo $opt->ShowCap($comune);
die;
}
if(isset($comune))
{
echo $opt->ShowPuntivenditaCITY($comune);
die;
}
if(isset($_POST['cap']))
{
echo $opt->ShowPuntivendita();
die;
}
?>
facendo prove ora nono mi mostra i comuni in home.php
http://www.sg.drgiorgini.it/punti_vendita/home.php
ma all'invio mi mostra gi� la tendina dei comuni come se la provincia fosse selezionata
ma se seleziono una voce dalle provine poi non posso selezionare il comune, come in home
Ultima modifica di spakiz; 27-02-2017 a 15:19 Motivo: aggiunta informazioni
Sul tuo codice mi dice che non è definita showComuni() . Ovviamente io l'avevo messa per farti capire. tu invece avevi fatto il bind via jquery, quindi non serve che metti l'onchange.
if(isset($prov))
{
echo $opt->ShowComuni($prov);
die;
}
if(isset($comune))
{
echo $opt->ShowCap($comune);
die;
}
if(isset($comune))
{
echo $opt->ShowPuntivenditaCITY($comune);
die;
}
if(isset($_POST['cap']))
{
echo $opt->ShowPuntivendita();
die;
}
Ovviamente $comuni/$prov devi assegnarle dal array $_POST, così non hanno valore
banalmente fai così:
<?php
include_once 'select.class.php';
$opt = new SelectList();
if(isset($_POST['provincia']))
{
echo $opt->ShowComuni($_POST['provincia']);
die;
}
if(isset($_POST['city']))
{
echo $opt->ShowCap($_POST['city']);
die;
}
if(isset($_POST['MYCITY']))
{
echo $opt->ShowPuntivenditaCITY($_POST['MYCITY']);
die;
}
?>
Occhio alla sicurezza. i dati che ricevi non dovresti metterli direttamente nelle query: o fai l'escape oppure usi i prepared statements
inizia a prendere forma...
in home le due select si popolano e al click passa i dati a index2
vedo l'elenco ma non vedo le due select pricipali(province e regioni) popolate e andrebbe anche bene solo che poi non riesco a fare il successivo filtro per cap.
in realt� non mi funziona anche facendo la ricerca interamente in index2
come non detto, da solo funziona... ma arrivando dalla home, non essendo popolate le precedenti select non mi mostra i cap
Ultima modifica di spakiz; 28-02-2017 a 14:00 Motivo: aggiunta informazioni
i file online sono aggiornati? perchè se fai il submit dalla "home" poi le due select sono popolate, ma non c'è selezionata la option.
Questo perchè nel tuo SelectList gli passi la variabile ma non la usi. dovresti fare così:
Codice PHP:
public function ShowProvince($prov = ''){
$sql = "SELECT DISTINCT provincia FROM prodotto_p_vendita order BY provincia ";
$res = mysql_query($sql,$this->conn);
$selected = ($prov) ? '' : 'selected';
$regioni = '<option value="0" '.$selected.' >scegli...</option>';
while($row = mysql_fetch_array($res))
{
$selected = ($prov == $row['provincia']) ? 'selected' : '';
$regioni .= '<option value="' . $row['provincia'] .'" '.$selected.'>'. utf8_encode($row['provincia']) .'</option>';
}
return $regioni;
}