php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-01-2008, 18:33
deschmiddi
 Junior Member
Links : Onlinestatus : deschmiddi ist offline
Registriert seit: Jan 2003
Beiträge: 158
deschmiddi ist zur Zeit noch ein unbeschriebenes Blatt
deschmiddi eine Nachricht über ICQ schicken
Standard Json-Variablen in PHP ansprechen.

Hi leute, hab mir schon einiges zum Thema JSOn
in combination mit PHP durchgelesen,
weiß soweit über unterscheide zwischen PHP 4 und
Version größer 5.2 bescheid aber irgentwie steh ich
trotzdem bisschen auf dem Schlauch.
Ich hab ein sehr schönes Codeschnipselchen für ein
Ajax-Bilderalbum entdeckt. Die Php-dateien hierzu
muss ich mir allerdings selber coden und hier bei hab
ich das Problem, dass ich einfach keinen Weg finde,
die in Javascript erzeugten JSON-Werte in PHP anzusprechen.

Hier mal zur Anschauung die wichtigsten Funktionen
aus meinem Javascript:

Code:
var JSONService = Class.create ({
	initialize: function(definition) {
		this.mod = definition.mod;

		var methods = definition.methods;
		
		var i;
		
		for (i=0; i < methods.length; ++i ) {
			var name = methods[i].name+"";
			var argc;

			if ( methods[i].parameters ) {
				argc = methods[i].parameters.length;
			} else {
				argc = 0;
			}
this[name] = new Function ('return new 

InvokeCall("'+this.mod+'","'+name+'",'+argc+',arguments);');
		}
	}
});


var InvokeCall = Class.create ({
	initialize: function(mod, method, argc, params) {
		if ( argc != params.length ) {
			alert("Falsche Anzahl an Parametern bei Call " + method + " in Modul " + mod);
			return;
		}		

		this.mod = mod;
		this.method = method;
		
		// Array kopieren - clone() funktioniert bei den 
		// built-in parameters array nicht
		var i;
		this.params=[];
		for ( i=0; i < params.length; ++i ) {
			this.params[i] = params[i];
		}

	
	},
	
	call: function () {
		var config = {
			mod: this.mod,
			method: this.method,
			params: this.params
		};
		
		new Ajax.Request(
			"ajax.php", {
			method: "post",
			postBody: Object.toJSON(config),
			onSuccess: this.onSuccess.bind(this),
			onFailure: this.onFailure.bind(this)
		});	
	},
	
	onSuccess: function (response) {
		var responseObj = eval("("+response.responseText+")");
		this.callback.call({},responseObj.ret);
	},
	
	onFailure: function ( response ) {
		alert("fehler")
	},
	
	setCallback: function ( callback, context ) {
		if ( context != null ) {
			this.callback=callback.bind(context);	
		} else {
			this.callback = callback;
		}
		return this;
	},
	
	setErrorCallback: function ( callback ) {
		this.errorCallback = callback;
		return this;
	}
});
Dieser Teil ruft die oben beschriebene Funktion JSONService auf:
Code:
var EditUserGalerieService = new JSONService (
	{
		mod: "usergalerie",
		methods: 
			[
				{
					name: "get_pictures",
					parameters:
						[
							"user_album_id"
						]
				},
				{
					name: "sort",
					parameters:
						[
							"user_album_id",
							"order"
						]
				}
			]
	}
);
loadalbum ruft die oben genannte Funktion
EditUserGalerieService auf. Genau an dieser Stelle
liegt mein Problem. Die hier erzeugten JSON-Werte
möchte in meiner ajax.php ansprechen und nach
Verarbeitung an loadAlbumCallback zurückgeben.
Allerdings weiß ich nicht wie. Meine ajax.php folgt weiter unten.
Code:
loadAlbum: function (user_album_id) {
        this.showWaitScreen("Lade Bilderalbum");
		   EditUserGalerieService.get_pictures(user_album_id).setCallback(
this.loadAlbumCallback,this).call();
}
	
loadAlbumCallback: function (pictures) {
	var i;
		
	var html = "";
	var template = new Template(
	'<div id="pic_#{user_galerie_id}" class="picture">blabla</div>'
	);
		
	for (i=0; i < pictures.length; ++i ) {
		html+=template.evaluate(pictures[i]);
	}
		
		
	if ( pictures.length == 0 ) {
		$('useralbum_images').innerHTML = "<br />In dem Album befinden sich noch keine Bilder.";
	} else {	
		$('useralbum_images').innerHTML = html;
	}

	this.hideWaitScreen ();
	this.showToolbar ();
}
Hier meine ajax.php:

PHP-Code:
// So wird mit PHP 5.2 JSON zu PHP 
$test1 '{"mod": "usergalerie", "method": "get_pictures", "params": ["175546"]}';
$test json_decode($test1);
var_dump($test);

//Was in $test1 steht hätte ich jetzt aber gerne dynamisch vom Javascript
//Aber wie?
$_GET["mod"]  // fehlanzeige
$_POST["mod"// fehlanzeige
$_REQUEST["mod"//fehlanzeige 
Wenn mir jemand weiterhelfen könnte wär ich echt sehr verbunden.
Such mich jetzt schon seit tagen durch Tutorials und Foren, aber ich finde einfach
keine Lösung.
__________________
Geht net gibts net...

Geändert von deschmiddi (05-01-2008 um 18:38 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 05-01-2008, 21:02
deschmiddi
 Junior Member
Links : Onlinestatus : deschmiddi ist offline
Registriert seit: Jan 2003
Beiträge: 158
deschmiddi ist zur Zeit noch ein unbeschriebenes Blatt
deschmiddi eine Nachricht über ICQ schicken
Standard

Also bezüglich meines Problems bin ich dann doch noch fündig geworden.
Hab mir mal im netz die json.php runtergeladen und darin war folgendes als hilfe zu finden:

* // create a new instance of Services_JSON
* $json = new Services_JSON();
*
* // convert a complexe value to JSON notation, and send it to the browser
* $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4)));
* $output = $json->encode($value);
*
* print($output);
* // prints: ["foo","bar",[1,2,"baz"],[3,[4]]]
*
* // accept incoming POST data, assumed to be in JSON notation
* $input = file_get_contents('php://input', 1000000);
* $value = $json->decode($input);

accept incoming POST data war genau das was ich gesucht habe.
Für alle diejenigen die PHP > 5.2 verwenden und JSON somit schaon standardmäßig vorhanden ist heist es natürlich dann:

PHP-Code:
$value json_decode($input); 
Allerdings hab ich jetzt noch ein kleines Problem: beim mir sieht $value so aus:
PHP-Code:
$value = {"mod""usergalerie""method""get_pictures""params": ["175546"]}; 
wie komme ich jetzt an die einzelnen Werte usergalerie, get_pictures und an die 175546 ran?
__________________
Geht net gibts net...
Mit Zitat antworten
  #3 (permalink)  
Alt 05-01-2008, 22:57
deschmiddi
 Junior Member
Links : Onlinestatus : deschmiddi ist offline
Registriert seit: Jan 2003
Beiträge: 158
deschmiddi ist zur Zeit noch ein unbeschriebenes Blatt
deschmiddi eine Nachricht über ICQ schicken
Standard

Nach erneutem suchen hab ich auch das nun rausbekommen:
Zugriff auf die einzelnen Werte erfolgt so:

PHP-Code:
echo $value->mod//liefert usergalerie 
vielleicht ist es ja für andere hilfreich.
Schönen abend noch.
__________________
Geht net gibts net...
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

WeltExplorer v1.0

WeltExplorer v1.0 ist ein Dateimanager zum Browsen und Operieren im Dateisystem. Bei installiertem cURL können Ordner und Dateien zu entfernten FTP-Servern hochgeladen bzw. von diesen heruntergeladen werden, etwa zum Erstellen von Backups oder Mirrorsites

06.02.2019 weltvolk | Kategorie: PHP/ File
PG Job Site Pro

> Job Site Pro - web-basiertes Programm, auf PHP/MySQL für Erstellung der funktionellen Job Board Site gebaut. Das hat erweitertes Management-System für Arbeitssuchenden und Arbeitgeber und kann für bestimmte Länder, Regionen oder einfach generelle Job Si

05.02.2019 submit@ | Kategorie: PHP/ Management
ModuleStudio ansehen ModuleStudio

Modellgetriebene Entwicklung von Erweiterungen für das Open Source Framework Zikula.

15.01.2019 Guite | Kategorie: PHP ENTWICKLUNGSUMGEBUNG
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:04 Uhr.