我修改了http://tutorialzine.com/2011/11/chained-ajax-selects-jquery/的文件部分 文件ajax.php,但我收到一个错误,我看不到网站工作。这是我的代码:
<?php
class SelectBox{
public $items = array();
public $defaultText = '';
public $title = '';
public function __construct($title, $default){
$this->defaultText = $default;
$this->title = $title;
}
public function addItem($name, $connection = NULL){
$this->items[$name] = $connection;
return $this;
}
public function toJSON(){
return json_encode($this);
}
}
$ProductSelect = new SelectBox('Categorie','Seleziona un Livello di Formazione');
$ProductSelect->addItem('Lauree Triennali','TriSelect')
->addItem('Lauree Magistrali','MagiSelect')
->addItem('Dottorati','DottSelect')
->addItem('Master','MasterSelect')
->addItem('Esame di Stato Attuario','AttuarioSelect');
// Triennali
$TriSelect = new SelectBox('Lauree Triennali', 'Seleziona Università');
$TriSelect->addItem('Bologna (Triennali)','BolognatriSelect')
->addItem('Firenze(Triennali)','FirenzetriSelect')
->addItem('Genova(Triennali)','GenovatriSelect')
->addItem('Messina(Triennali)','MessinatriSelect')
->addItem('Milano (Bicocca)(Triennali)','MilanobicoccatriSelect')
->addItem('Padova(Triennali)','PadovatriSelect')
->addItem('Perugia(Triennali)','PerugiatriSelect')
->addItem('Pisa(Triennali)','PisatriSelect')
->addItem('Rimini(Triennali)','RiminitriSelect')
->addItem('Roma (Sapienza)(Triennali)','RomasapienzatriSelect')
->addItem('Torino(Triennali)','TorinotriSelect')
->addItem('Trieste(Triennali)','TriestetriSelect')
->addItem('Udine(Triennali)','UdinetriSelect');
// Magistrali
$MagiSelect = new SelectBox('Lauree Magistrali','Seleziona Università');
$MagiSelect->addItem('Bologna (Magistrali)','BolognamagiSelect')
->addItem('Firenze (Magistrali)','FirenzemagiSelect')
->addItem('Messina (Magistrali)','MessinamagiSelect')
->addItem('Milano (Bicocca) (Magistrali)','MilanobicoccamagiSelect')
->addItem('Napoli (Magistrali)','NapolimagiSelect')
->addItem('Padova (Magistrali)','PadovamagiSelect')
->addItem('Rimini (Magistrali)','RiminimagiSelect')
->addItem('Roma (Sapienza) (Magistrali)','RomasapienzamagiSelect')
->addItem('Torino (Magistrali)','TorinomagiSelect');
// Dottorati
$DottSelect = new SelectBox('Dottorati', 'Seleziona Università');
$DottSelect->addItem('Bergamo (Dottorati)','BergamodottSelect')
->addItem('Bologna (Dottorati)','BolognadottSelect')
->addItem('Firenze (Dottorati)','FirenzedottSelect')
->addItem('Foggia (Dottorati)','FoggiadottSelect')
->addItem('Messina (Dottorati)','MessinadottSelect')
->addItem('Milano (Dottorati)','MilanodottSelect')
->addItem('Milano (Bicocca) (Dottorati)','MilanobicoccadottSelect')
->addItem('Milano (Bocconi) (Dottorati)','MilanobocconidottSelect')
->addItem('Padova (Dottorati)','PadovadottSelect')
->addItem('Pavia (Dottorati)','PaviadottSelect')
->addItem('Perugia (Dottorati)','PerugiadottSelect')
->addItem('Pescara (Dottorati)','PescaradottSelect')
->addItem('Pisa (Dottorati)','PisadottSelect')
->addItem('Roma (Sapienza) (Dottorati)','RomasapienzadottSelect')
->addItem('Roma (Roma Tre) (Dottorati)','RomatredottSelect');
// Master
$MasterSelect = new SelectBox('Master', 'Seleziona Università');
$MasterSelect->addItem('Bologna (Master)','BolognamasterSelect')
->addItem('Milano (Bicocca) (Master)','MilanobicoccamasterSelect')
->addItem('Pavia (Master)','PaviamasterSelect')
->addItem('Roma (Cattolica) (Master)','RomacattolicamasterSelect')
->addItem('Roma (Sapienza) (Master)','RomasapienzamasterSelect');
// Attuario
$AttuarioSelect = new SelectBox('Esame di Stato Attuario', 'Seleziona una Città');
$AttuarioSelect->addItem('Roma Sapienza (Attuario)' , 'RomasapienzaattuarioSelect')
->addItem('Trieste (Attuario)','TriesteattuarioSelect');
// Bologna Triennali
$BolognatriSelect = new SelectBox('Bologna Triennali', 'Seleziona un corso');
$BolognatriSelect->addItem('Sviluppo e Cooperazione Internazionale')
->addItem('Scienze Statistiche (Bologna)');
// Firenze Triennali
$FirenzetriSelect = new SelectBox('Firenze Triennali', 'Seleziona un corso');
$FirenzetriSelect->addItem('Statistica (Firenze)');
// Genova Triennali
$GenovatriSelect = new SelectBox('Genova Triennali', 'Seleziona un corso');
$GenovatriSelect->addItem('Statistica Matematica e Trattamento Informatico dei dati');
// Messina Triennali
$MessinatriSelect = new SelectBox('Messina Triennali', 'Seleziona un corso');
$MessinatriSelect->addItem('Scienze Statistiche (Messina)')
->addItem('Analisi e Consulenza Statistica');
// Milano Bicocca Triennali
$MilanobicoccatriSelect = new SelectBox('Milano Bicocca Triennali', 'Seleziona un corso');
$MilanobicoccatriSelect->addItem('Statistica e Gestione delle Informazioni')
->addItem('Scienze Statistiche ed Economiche (Milano Triennale)');
// Napoli Triennali
$NapolitriSelect = new SelectBox('Napoli Triennali', 'Seleziona un corso');
$NapolitriSelect->addItem('Statistica (Napoli)')
;
// Padova Triennali
$PadovatriSelect = new SelectBox('Padova Triennali', 'Seleziona un corso');
$PadovatriSelect->addItem('Statistica e Tecnologie Informatiche')
->addItem('Statistica e Gestione delle Imprese')
->addItem('Statistica Economia e Finanza')
;
// Perugia Triennali
$PerugiatriSelect = new SelectBox('Perugia Triennali', 'Seleziona un corso');
$PerugiatriSelect->addItem('Statistica e Informatica per la Gestione delle Imprese')
;
// Pisa Triennali
$PisatriSelect = new SelectBox('Pisa Triennali', 'Seleziona un corso');
$PisatriSelect->addItem('Statistica per l’Economia e per l’Azienda');
// Rimini Triennali
$RiminitriSelect = new SelectBox('Rimini Triennali', 'Seleziona un corso');
$RiminitriSelect->addItem('Finanza, Assicurazioni e Impresa');
// Roma Sapienza Triennali
$RomasapienzatriSelect = new SelectBox('Roma Sapienza Triennali', 'Seleziona un corso');
$RomasapienzatriSelect->addItem('Statistica Gestionale')
->addItem('Statistica, Economia e Società')
->addItem('Statistica, Economia Finanza e Assicurazioni');
// Torino Triennali
$TorinotriSelect = new SelectBox('Torino Triennali', 'Seleziona un corso');
$TorinotriSelect->addItem('Scienze Statistiche (Torino)');
// Trieste Triennali
$TriestetriSelect = new SelectBox('Trieste Triennali', 'Seleziona un corso');
$TriestetriSelect->addItem('Statistica e Informatica per l’Azienda, la Finanza e l’Assicurazione');
// Udine Triennali
$UdinetriSelect = new SelectBox('Udine Triennali', 'Seleziona un corso');
$UdinetriSelect->addItem('Statistica e Informatica per la Gestione delle Imprese');
// Bologna Magistrali
$magiSelect = new SelectBox('Bologna Magistrali', 'Seleziona un corso');
$magiSelect->addItem('Statistica, Economia e Impresa')
->addItem('Scienze Statistiche (Bologna)')
->addItem('Quantitative Finance');
// Firenze Magistrali
$FirenzemagiSelect = new SelectBox('Firenze Magistrali', 'Seleziona un corso');
$FirenzemagiSelect->addItem('Scienze Statistiche (Firenze)');
// Messina Magistrali
$MessinamagiSelect = new SelectBox('Messina Magistrali', 'Seleziona un corso');
$MessinamagiSelect->addItem('Statistica per le Applicazioni')
->addItem('Statistica e Tecniche Decisionali');
// Milano Bicocca Magistrali
$MilanobicoccamagiSelect = new SelectBox('Milano Bicocca Magistrali', 'Seleziona un corso');
$MilanobicoccamagiSelect->addItem('Scienze e Gestione dei Servizi')
->addItem('Scienze Statistiche ed Economiche (Milano Magistrale)')
->addItem('Biostatistica e Statistica Sperimentale');
// Napoli Magistrali
$NapolimagiSelect = new SelectBox('Napoli Magistrali', 'Seleziona un corso');
$NapolimagiSelect->addItem('Scienze Statistiche per le Decisioni');
// Padova Magistrali
$PadovamagiSelect = new SelectBox('Padova Magistrali', 'Seleziona un corso');
$PadovamagiSelect->addItem('Scienze Statistiche (Padova)');
// Rimini Magistrali
$RiminimagiSelect = new SelectBox('Rimini Magistrali', 'Seleziona un corso');
$RiminimagiSelect->addItem('Sistemi Informativi per l’Azienda e la Finanza')
;
// Roma Sapienza Magistrali
$RomasapienzamagiSelect = new SelectBox('Roma Sapienza Magistrali', 'Seleziona un corso');
$RomasapienzamagiSelect->addItem('Scienze Statistiche per le Strategie Aziendali')
->addItem('Scienze Statistiche ed Economiche (Roma)')
->addItem('Scienze Statistiche e Decisionali')
->addItem('Scienze Statistiche Demogrfiche e Sociali')
->addItem('Scienze Attuariali e Finanziarie');
// Torino Magistrali
$TorinomagiSelect = new SelectBox('Torino Magistrali', 'Seleziona un corso');
$TorinomagiSelect->addItem('Sviluppo, Ambiente e Cooperazione');
// Bergamo Dottorati
$BergamodottSelect = new SelectBox('Bergamo Dottorati', 'Seleziona un corso');
$BergamodottSelect->addItem('Economics, Applied Mathematics and Operational Research')
->addItem('Metodi Computazionali per le Previsioni e Decisioni Economiche e Finanziarie');
// Bologna Dottorati
$BolognadottSelect = new SelectBox('Bologna Dottorati', 'Seleziona un corso');
$BolognadottSelect->addItem('Metodologia Statistica per la Ricerca Scientifica');
// Firenze Dottorati
$FirenzedottSelect = new SelectBox('Firenze Dottorati', 'Seleziona un corso');
$FirenzedottSelect->addItem('Statistica Applicata')
;
// Foggia Dottorati
$FoggiadottSelect = new SelectBox('Foggia Dottorati', 'Seleziona un corso');
$FoggiadottSelect->addItem('Metodi Matematici per le Decisioni Economiche e Finanziarie')
;
// Messina Dottorati
$MessinadottSelect = new SelectBox('Messina Dottorati', 'Seleziona un corso');
$MessinadottSelect->addItem('Turismo Sostenibile, Fiscalità di Vantaggio, Metodi Statistici per l’Ambiente e la Qualità')
;
// Milano Dottorati
$MilanodottSelect = new SelectBox('Milano Dottorati', 'Seleziona un corso');
$MilanodottSelect->addItem('Statistica Medica')
->addItem('Matematica e Statistica per le Scienze Computazionali')
;
// Milano Bicocca Dottorati
$MilanobicoccadottSelect = new SelectBox('Milano Bicocca Dottorati', 'Seleziona un corso');
$MilanobicoccadottSelect->addItem('Scienze Economiche')
->addItem('Statistica (Milano Bicocca)')
;
// Milano Bocconi Dottorati
$MilanobocconidottSelect = new SelectBox('Milano Bocconi Dottorati', 'Seleziona un corso');
$MilanobocconidottSelect->addItem('Statistica (Milano Bocconi)')
;
// Padova Dottorati
$PadovadottSelect = new SelectBox('Padova Dottorati', 'Seleziona un corso');
$PadovadottSelect->addItem('Statistica (Padova)')
;
// Pavia Dottorati
$PaviadottSelect = new SelectBox('Pavia Dottorati', 'Seleziona un corso');
$PaviadottSelect->addItem('Matematica e Statistica')
;
// Perugia Dottorati
$PerugiadottSelect = new SelectBox('Perugia Dottorati', 'Seleziona un corso');
$PerugiadottSelect->addItem('Metodi Matematici e Statistici per le Scienze Economiche e Sociali')
;
// Pescara Dottorati
$PescaradottSelect = new SelectBox('Pescara Dottorati', 'Seleziona un corso');
$PescaradottSelect->addItem('Economics and Statistics')
;
// Pisa Dottorati
$PisadottSelect = new SelectBox('Pisa Dottorati', 'Seleziona un corso');
$PisadottSelect->addItem('Matematica per le Decisioni Economiche')
;
// Roma Sapienza Dottorati
$RomasapienzadottSelect = new SelectBox('Roma Sapienza Dottorati', 'Seleziona un corso');
$RomasapienzadottSelect->addItem('Analisi Economica, Matematica e Statistica dei Fenomeni Sociali')
->addItem('Statistica Economica')
->addItem('Ricerca Operativa')
->addItem('Statistica Metodologica')
->addItem('Scienze Attuariali')
;
// Roma Tre Dottorati
$RomatredottSelect = new SelectBox('Roma Tre Dottorati', 'Seleziona un corso');
$RomatredottSelect->addItem('Metodi Statistici per l’Economia e l’Impresa')
->addItem('Economia e Metodi Quantitativi')
;
// Bologna Master
$BolognamasterSelect = new SelectBox('Bologna Master', 'Seleziona un corso');
$BolognamasterSelect->addItem('Ricerche di Mercato e Data Mining (Sede di Buenos Aires)')
->addItem('Biostatistica')
;
// Milano Bicocca Master
$MilanobicoccamasterSelect = new SelectBox('Milano Bicocca Master', 'Seleziona un corso');
$MilanobicoccamasterSelect->addItem('Business Intelligence e Sistemi di Supporto per le Decisioni')
;
// Pavia Master
$PaviamasterSelect = new SelectBox('Pavia Master', 'Seleziona un corso');
$PaviamasterSelect->addItem('Epidemiologia Genetica e Molecolare')
;
// Roma Cattolica Master
$RomacattolicamasterSelect = new SelectBox('Roma Cattolica Master', 'Seleziona un corso');
$RomacattolicamasterSelect->addItem('Epidemiologia e Biostatistica')
;
// Roma Sapienza Master
$RomasapienzamasterSelect = new SelectBox('Roma Sapienza Master', 'Seleziona un corso');
$RomasapienzamasterSelect->addItem('Gestione della Mobilità Sostenibile')
->addItem('Data Intelligence e Strategie Decisionali')
->addItem('Fonti Strumenti e Metodi per la Ricerca Sociale')
;
// Roma Sapienza Attuario
$RomasapienzaattuarioSelect = new SelectBox('Esame di Roma', 'Seleziona il tipo di esame');
$RomasapienzaattuarioSelect->addItem('Attuario (Roma)')
->addItem('Attuario Junior (Roma)')
;
// Trieste Attuario
$TriesteattuarioSelect = new SelectBox('Esame di Trieste', 'Seleziona il tipo di esame');
$TriesteattuarioSelect->addItem('Attuario (Trieste)')
->addItem('Attuario Junior (Trieste)');
// Registra le Variabili in una Array
$selects = array(
'ProductSelect' => $ProductSelect,
'TriSelect' => $TriSelect,
'MagiSelect' => $MagiSelect,
'DottSelect' => $DottSelect,
'MasterSelect' => $MasterSelect,
'AttuarioSelect' => $AttuarioSelect,
'BolognatriSelect' => $BolognatriSelect,
'FirenzetriSelect' => $FirenzetriSelect,
'GenovatriSelect' => $GenovatriSelect,
'MessinatriSelect' => $MessinatriSelect,
'MilanobicoccatriSelect' => $MilanobicoccatriSelect,
'NapolitriSelect' => $NapolitriSelect,
'PadovatriSelect' => $PadovatriSelect,
'PerugiatriSelect' => $PerugiatriSelect,
'PisatriSelect' => $PisatriSelect,
'RiminitriSelect' => $RiminitriSelect,
'RomasapienzatriSelect' => $RomasapienzatriSelect,
'TorinotriSelect' => $TorinotriSelect,
'TriestetriSelect' => $TriestetriSelect,
'UdinetriSelect' => $UdinetriSelect,
'BolognamagiSelect' => $BolognamagiSelect,
'FirenzemagiSelect' => $FirenzemagiSelect,
'MessinamagiSelect' => $MessinamagiSelect,
'MilanobicoccamagiSelect' => $MilanobicoccamagiSelect,
'NapolimagiSelect' => $NapolimagiSelect,
'PadovamagiSelect' => $PadovamagiSelect,
'RiminimagiSelect' => $RiminimagiSelect,
'RomasapienzamagiSelect' => $RomasapienzamagiSelect,
'TorinomagiSelect' => $TorinomagiSelect,
'BergamodottSelect' => $BergamodottSelect,
'BolognadottSelect' => $BolognadottSelect,
'FirenzedottSelect' => $FirenzedottSelect,
'FoggiadottSelect' => $FoggiadottSelect,
'MessinadottSelect' => $MessinadottSelect,
'MilanodottSelect' => $MilanodottSelect,
'MilanobicoccadottSelect' => $MilanobicoccadottSelect,
'MilanobocconidottSelect' => $MilanobocconidottSelect,
'PadovadottSelect' => $PadovadottSelect,
'PaviadottSelect' => $PaviadottSelect,
'PerugiadottSelect' => $PerugiadottSelect,
'PescaradottSelect' => $PescaradottSelect,
'PisadottSelect' => $PisadottSelect,
'RomasapienzadottSelect' => $RomasapienzadottSelect,
'RomatredottSelect' => $RomatredottSelect,
'BolognamasterSelect' => $BolognamasterSelect,
'MilanobicoccamasterSelect' => $MilanobicoccamasterSelect,
'PaviamasterSelect' => $PaviamasterSelect,
'RomacattolicamasterSelect' => $RomacattolicamasterSelect,
'RomasapienzamasterSelect' => $RomasapienzamasterSelect,
'RomasapienzaattuarioSelect' => $RomasapienzaattuarioSelect,
'TriesteattuarioSelect' => $TriesteattuarioSelect
);
if(array_key_exists($_GET['key'],$selects)){
header('Content-type: application/json');
echo $selects[$_GET['key']]->toJSON();
}
else{
header("HTTP/1.0 404 Not Found");
header('Status: 404 Not Found');
}
?>
我不明白问题出在哪里,我花了两个多小时寻找一些我没找到的东西。
答案 0 :(得分:1)
$BolognamagiSelect
未定义。
参考此处:
$selects = array(
'ProductSelect' => $ProductSelect,
// ....truncated... //
'UdinetriSelect' => $UdinetriSelect,
'BolognamagiSelect' => $BolognamagiSelect, // <-- here
'FirenzemagiSelect' => $FirenzemagiSelect,
// ....truncated... //
);