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

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

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

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