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-12-2007, 07:42
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard JSON-Übergabe-Problem an PHP

Hallo,

ich arbeite mich gerade in Prototype-JS und JSON ein. Jetzt hab ich ein Problem. Wenn ich ein Array an PHP übergeben möchte kann ich das lt. Dokumentationen im Internet via JSON übergeben.
normalerweise kann man sein JS-Array so aufbauen:
Code:
var myarray=['hh','jjj'];
und es dann so via Prototype an PHP übergeben, wo man es dann mit json_decode zu einem php-array umwandelt. Jetzt funktioniert das bei mir aber nicht. Bei mir klappt es nur, wenn ich das javascript-array als string übergebe und zwar so:
Code:
var myarray="['hh','jjj']";
und das ganze dann via json_decode(stripslashes($array_input)) in PHP-Array umwandele. Hat jemand ne Idee wie ich das hinkriegen könnte, dass ich keinen String übergeben muss???
Mit Zitat antworten
  #2 (permalink)  
Alt 05-12-2007, 08:58
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Arbeite direkt mit Prototype's Arrays, diese besitzen die toJSON-Methode, welche afaik bei dem Senden aufgerufen wird.
Mit Zitat antworten
  #3 (permalink)  
Alt 05-12-2007, 09:26
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

funktioniert, danke ;-)
Mit Zitat antworten
  #4 (permalink)  
Alt 05-12-2007, 13:33
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

wenn wir grad hier bei prototype und json sind, mal noch ne andere frage

und zwar folgendes:
Gibt es eine Möglichkeit von Javascript und Prototype, dass ich ohne Schleifen und Abfragen ein Array zusammen kriege, dass mir alle "ge"-checkten Radio-Buttons des selben Names übergeben???? Bisher hab ich nämlich nur die Möglichkeit gefunden, die Anzahl aller Radio-Buttons des selben Namens herauszufinden, und zwar so:
Code:
document.getElementsByName("test")
und folgende Schleife will ich mittels Javascript in einer Zeile haben:
Code:
for(i=0;i<document.getElementsByName("test").length;i++)
            {
                if(document.getElementsByName("test")[i].checked==true)
                {
                    mycheckboxe[i] = document.getElementsByName("test")[i].value;
                }
            }
Gibt es da eine Möglichkeit, oder nicht? Weil ich möchte gerne unnötige Schleifendurchläufe vermeiden ;-)

SChonmal Danke
Mit Zitat antworten
  #5 (permalink)  
Alt 05-12-2007, 13:48
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
var mycheckbox = [];
// Alle radio-Buttons eines Formulares
$( 'myform' ).getInputs'radio''test' ).each( function( el ) {
   if( 
el.checked mycheckbox.pushel.value );
} );
// Oder überhaupt alle radio-Buttons auf der Seite
$$( 'input[type=radio][name=test]' ).each( function( el ) {
   if( 
el.checked mycheckbox.pushel.value );
} ); 
Wobei ersteres aufgrund des kleineren zu durchsuchenden DOM-Baumes zu bevorzugen ist!
Mit Zitat antworten
  #6 (permalink)  
Alt 07-12-2007, 09:39
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

moin, hab noch n kleines Problem mit dem JSON-Gedöns, aber das letzte ;-)
und zwar bekomme ich vom server (PHP) n array zurück, dass ich nun auch als JSON-Objekt in meiner Funktion habe, jedoch nur als String. Kennt jemand ne Möglichkeit, den String einfach auseinanderzunehmen, dass ich letztendlich wieder das Array habe????
so mach ich das im Moment, da kommt aber nur der JSON-"String" bei raus: nom und json sind vom Server generierte Parameter, die automatisch von Prototype gefüllt werden
Code:
function f_assign(nom, json)
{
    
    arr_json = new Array(json);
    
    for(a in arr_json[0])
    {
        $('response').innerHTML += arr_json[0][a];
    }
Mit Zitat antworten
  #7 (permalink)  
Alt 07-12-2007, 09:52
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

eval oder den passenden Header zurücksenden, dann macht Prototype das für dich (Link, Abschnitt "Automatic JavaScript response evaluation").
Mit Zitat antworten
  #8 (permalink)  
Alt 07-12-2007, 10:01
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

ne das funktioniert irgendwie nicht.
hier mal meine Rückgabe:
Code:
 
$result = array("answer" => $arr_ausgabe);
header('X-JSON: '.trim($myjson->encode($result )));
und zurück hole ich es wie oben beschrieben
Code:
 function f_assign(nom, json)
{
	arr_json = new Array(json);
	
	for(a in arr_json[0])
	{
		$('response').innerHTML += "<br>" + arr_json[0][a];
	}	
	return json;
}
und da krieg ich halt nur den String obwohls so gemacht ist, wie in der prototype-doku drin steht
Mit Zitat antworten
  #9 (permalink)  
Alt 07-12-2007, 10:28
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

guck dir den header mal mit der Live HTTP Headers Extension für den FF an und poste den hier.
Was du da mit deinem Array biegst, checke ich allerdings nicht ganz!
Versuch vielleicht mal:
PHP-Code:
function theFunctransportjson ) {
    var 
response = $( 'response' );
    
json $Hjson );
    
json.each( function( pair ) {
        
response.insert'<br />'+pair.value );
    } );

Ungetestet, scheint mir aber das zu machen, was du vor hast!
Mit Zitat antworten
  #10 (permalink)  
Alt 07-12-2007, 10:37
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

also im Header steht folgendes drin:

Code:
X-JSON	{"answer":"[\"Salami\",\"Pilze\"]"}
aber mit deinem bekomm ich jetzt folgende Ausgabe:

answer,["Salami","Sardellen"]

hab dann grad noch n bissl probiert, bekomms aber nit auseinander
Mit Zitat antworten
  #11 (permalink)  
Alt 07-12-2007, 10:56
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Code:
X-JSON	{"answer":"[\"Salami\",\"Pilze\"]"}
Ist natürlich nicht richtig! Richtig wäre:
Code:
X-JSON	{"answer":["Salami","Pilze"]}
sonst ist answer kein Array! Musst meine Funktion dann natürlich noch so abändern, dass nicht json sondern json['answer'] ausgegeben wird!


Btw:
Zitat:
answer,["Salami","Sardellen"]
erhalte ich nicht als Ausgabe, sondern <br />["Salami","Sardellen"]
Mit Zitat antworten
  #12 (permalink)  
Alt 07-12-2007, 11:34
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

jo funktioniert so langsam n bissl besser ;-) die daten werden schön untereinander geschrieben, allerdings krieg ich jetzt noch n bissl mehr ausgegeben, und zwar quelltext, der folgendermaßen aussieht:
Code:
 
Salami
Pilze
function (iterator, context) { var index = 0; iterator = 
iterator.bind(context); try { this._each(function (value) 
{iterator(value, index++);}); } catch (e) { if (e != $break)
 { throw e; } } return this; }

function (number, iterator, context) { iterator = iterator ? 
iterator.bind(context) : Prototype.K; var index = - number,
 slices = [], array = this.toArray(); while ((index += number) < 
array.length) { slices.push(array.slice(index, index + number)); } 
return slices.collect(iterator, context); }

function (iterator, context) { iterator = iterator ? 
iterator.bind(context) : Prototype.K; var result = true; 
this.each(function (value, index) {result = result && !!iter
ator(value, index);if (!result) {throw $break;}}); retur
n result; }
function (iterator, context) { it

usw. usw.
haste da auch noch ne Ahnung, was das sein könnte oder besser gesagt. wodran das liegen könnte???
Mit Zitat antworten
  #13 (permalink)  
Alt 07-12-2007, 12:09
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was ist mit evalJSON() ?
__________________
ich glaube
Mit Zitat antworten
  #14 (permalink)  
Alt 07-12-2007, 13:14
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Du hast das Array-Objekt mit for in ausgelesen, richtig?
Mit Zitat antworten
  #15 (permalink)  
Alt 10-12-2007, 07:24
Mercury1987
 Registrierter Benutzer
Links : Onlinestatus : Mercury1987 ist offline
Registriert seit: Apr 2007
Ort: Furschweiler
Beiträge: 79
Mercury1987 ist zur Zeit noch ein unbeschriebenes Blatt
Mercury1987 eine Nachricht über ICQ schicken
Standard

ja richtig

EDIT:
ich hab mal grad alle Varianten ausprobiert. die 1. checkbox gedrückt, und ausgeben lassen, 1 und 3, 2 und 3, nur 2, nur 3. Immer wenn ich die 1. checkbox dabei hole, werden die ganzen Funktionen mit ausgegeben, wenn nur nr. 2 und 3 angeklickt werden, funktioniert es einwandfrei. Ich weiss keinen Rat mehr

Geändert von Mercury1987 (10-12-2007 um 07:58 Uhr)
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

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

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