Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst JSON Object auf Variable zuweisen

Mitglied: msr972

msr972 (Level 1) - Jetzt verbinden

21.09.2011, aktualisiert 17:19 Uhr, 5674 Aufrufe

Hallo administrator.de Mitglieder,

ich habe scheinbar gerade ein riesen Brett vor dem Kopf und komme mit jQuery / JSON / PHP nicht weiter. Deshalb wäre ich über eine kurze Hilfe dankbar.

Ich habe eine Seite, die u.A. auf jQuery basiert. Nun habe ich eine PHP Datei, die ich sowohl im PHP Bereich benötige (für includes) als auch für JS/JQuery. Dafür habe ich eine $_GET Abfrage drinnen, die das entsprechende als JSON Daten zurückliefert.
constants.php
01.
<?php 
02.
 
03.
	$customerStatus[1]		= "Aktiv"
04.
	$customerStatus[98]		= "Hinweis zur Sperrung"
05.
	$customerStatus[99]		= "Gesperrt";	 
06.
 
07.
	$constructionStatus[1]	= "Aktiv / Nur Webseite"
08.
	$constructionStatus[2]	= "Aktiv / Webseite + AÜ"
09.
	$constructionStatus[91]	= "Web / Hinweis zur Beendigung / Sperrung"
10.
	$constructionStatus[92]	= "Web + AÜ / Hinweis zur Beendigung / Sperrung"
11.
	$constructionStatus[99]	= "Gesperrt"
12.
 
13.
	if( $_GET['type'] == 'customers' ) { 
14.
		print json_encode($customerStatus); 
15.
	} else if ( $_GET['type'] == 'constructions' ) { 
16.
		print json_encode($constructionStatus); 
17.
18.
	 
19.
?>
Nun gibt es eine application.js die eigentlich nur den ausgelagerten JS/jQuery Code beinhaltet (also ab $(document).ready(function() )

Darin enthalten sind u.A.
01.
	function getConstants(type) { 
02.
		$.ajax({ 
03.
			type: 'GET', 
04.
			url: '/dh/constants.php', 
05.
			dataType: 'json', 
06.
			data: "type="+type, 
07.
			success: function(data){ 
08.
				return data; 
09.
10.
		}); 
11.
	};
und
01.
	function getCustomerDetails(custID){ 
02.
		var tempdata = ""; 
03.
		$.ajax({ 
04.
			url: '/dh/customerDetails.php', 
05.
			dataType: 'json', 
06.
			data: "custID="+custID, 
07.
			beforeSend: function() { 
08.
				$("#helpercontent").css('display','none'); 
09.
			}, 
10.
			success: function(data){ 
11.
                                // Bischen code entfernt, da nicht relevant 
12.
				var test = getConstants('customers'); 
13.
				console.log( "TEST: "+test ); 
14.
				$.each( test, function(key, value) { 
15.
					if( key == data.custStatus ) { 
16.
						$('<option value="'+key+'" selected>'+value+'</value>').appendTo("#custStatus"); 
17.
					} else { 
18.
						$('<option value="'+key+'">'+value+'</value>').appendTo("#custStatus"); 
19.
20.
				}); 
21.
22.
		}); 
23.
	};
Beim Aufruf eines bestimmten Links wird die Funktion getCustomerDetails() mit Parameter aufgerufen und die Daten aus der DB geladen. Das funktioniert soweit so gut.
Es sollte dann ebenfalls im success: Teil eine Zuweisung der var test erfolgen. Dies passiert über den Funktionsaufruf zu getConstants('customers').
Nur bleibt die var test einfach leer bzw. sie hat NULL als Wert.

Natürlich habe ich auch schon in der PHP ein echo/print durch ein return ersetzt und bin auf keinen grünen Zweig gekommen. Die Funktion getConstants liefert auch ein JSON Object zurück, ich seh es ja in Firebug. Aber wieso bekommt die Variable den Wert bzw. das JSON Object nicht zugewiesen?

Bin dankbar für jeden Tip..


Grüße





EDIT:

Ok, "Problem" gelöst..Das Brett konnte abgesägt werden..

Bei getConstants handelte es scih ebenfalls um einen async aufruf, wodurch test nicht befüllt werden konnte, da noch keine daten vorlagen. ich habe das problem QnD gelöst, indem ich die entsprechenden Punkte direkt in die getConstants eingepackt habe.
Sicherlich keine saubere Lösung und muss noch geändert werden (z.B. Callback)
Ähnliche Inhalte
Batch & Shell

Dateinamen mit Punkt einer Variablen zuweisen

gelöst Frage von DanilowitzBatch & Shell4 Kommentare

Hallo Leute, Bin neu hier im Forum und hätte eine Frage zur Batchprogrammierung, zu welcher ich im Internet keine ...

Batch & Shell

Batch: Variable einen Wert zuweisen

gelöst Frage von veniplexBatch & Shell7 Kommentare

Hallo zusammen! Ich bin gerade am verzweifeln Ich habe in Batch 2 Variablen: Wenn ich mir von diesen den ...

Batch & Shell

Netzwerkkarte Variable zuweisen

gelöst Frage von Patrick-ITBatch & Shell3 Kommentare

Hallo liebes Forum Ich versuche nun schon seit einigen Tagen in Batch die Netzwerkkarten automatisch mit einer automatisch zugewiesenen ...

Entwicklung

Json, Powershell und Arrays

gelöst Frage von SunnyRainyDayEntwicklung6 Kommentare

Moin Zusammen, Mit Sicherheit gibt es hier jemanden der mir mit meinem Powershell-Problem behilflich sein kann :) Ich stehe ...

Neue Wissensbeiträge
Windows Netzwerk
Browser-Lags und IPv6
Erfahrungsbericht von NixVerstehen vor 2 StundenWindows Netzwerk1 Kommentar

Hallo zusammen, wir betreiben als kleines Speditionsunternehmen ein überschaubares Windows-Netzwerk mit Win10-Clients sowie einem Server 2016 Essentials als "eierlegende ...

Humor (lol)

Erstaunlich, Windows mit extremer Laufzeit (Server) lol

Tipp von mathu vor 4 StundenHumor (lol)3 Kommentare

Was es so alles gibt. :-)

Windows Netzwerk

CGM Praxisarchiv funktioniert auf Clients nach Update auf 4.14 nicht mehr

Tipp von MOS6581 vor 22 StundenWindows Netzwerk

Moin, ein Kunde setzt das CGM-Praxisarchiv ein. Mehrplatzinstallation mit SQL-Server. Nachdem letzte Woche auf die 4.14 aktualisiert wurde, funktionierte ...

Windows 10

Windows 10 - Storage Sense - neues herstellerseitiges Cleaning-Tool statt cleanmgr

Tipp von mathu vor 1 TagWindows 102 Kommentare

Vermutlich ab dem Oktoberrelease wird eine neue Speicherbereinigungssuftware ausgeliefert von Microsoft. Cleanmgr.exe soll angeblich aber noch weiter parallel verfügbar ...

Heiß diskutierte Inhalte
Hyper-V
Windows Serer 2016 Standard virtualisieren
gelöst Frage von fritte87Hyper-V29 Kommentare

Hallo zusammen, ich muss für eine kleine Firma ein entsprechendes neues kleines Konzept bauen. Ich habe einen Server Standard ...

LAN, WAN, Wireless
Kombiniere mehrere 4G Router zu einem Netzwerk - Anwendung kleine LAN (10-20 Leute)
Frage von HulkTheHeroLAN, WAN, Wireless24 Kommentare

Guten Mittag liebes Administrator - Fourm, ich hoffe ich habe das richtige Thema ausgewählt - ansonsten bitte gerne verschieben ...

Windows Server
Fileserver von 2012 R2 auf 2012R2
gelöst Frage von ThabeusWindows Server23 Kommentare

Moin moin, leider war in der Vergangenheit der Fokus des Betriebs nicht auf Langfristigkeit ausgelegt. Daher stehe ich jetzt ...

Router & Routing
Größere Zahl VPN-Verbindungen mit Fritz-Box einrichten
Frage von miscmikeRouter & Routing15 Kommentare

Hallo Zusammen, ich supporte verschiedene Kunden mit bestehenden LAN-LAN-Kopplungen via FritzBox (7490, FritzOS 7.01) . Anwendungen sind z.B. Kaspersky-KSC ...