+(JAVA_SCRIPT) zwei verschiedene Parameter in einer URL
@ndre@s
- perl
Hallo Leute,
Wie bekomme ich das gemixt: Das PerlScript soll einen Parameter übergeben bekommen und das Javascript, welches von dem Perlscript erzeugt wird einen weiteren.
Also (mal davon ab, das es nicht funktioniert) etwa so:
... <a href="adresse.de/seite.pl?parameter_fuer_perl?parameter_fuer_javascript">...
Vielleicht bin ich ja auch nur blind und sehe die naheliegende Lösung nicht.
Gruß
Andreas
Grüssi,
Wie bekomme ich das gemixt: Das PerlScript soll einen Parameter übergeben bekommen und das Javascript, welches von dem Perlscript erzeugt wird einen weiteren.
Also (mal davon ab, das es nicht funktioniert) etwa so:
... <a href="adresse.de/seite.pl?parameter_fuer_perl?parameter_fuer_javascript">...
Was sprach gegen:
<a href="adresse.de/seite.pl?parameter_fuer_perl=wert1¶meter_fuer_javascript=wert2"> ?
Perl lest halt nur den ersten Parameter aus, und das Javscript konzentriert sich auf den zweiten.
lg bernhard
Hallo Bernhard
Was sprach gegen:
<a href="adresse.de/seite.pl?parameter_fuer_perl=wert1¶meter_fuer_javascript=wert2"> ?
Dagegen spricht die länge der url-zeile UND das die scripte selber wissen welcher inhalt wohin gehört, also kein schlüsselname mitgegeben werden muss.
Also:
<a href="adresse.de/seite.pl?wert1&wert2">
sollte ausreichen.
Ich sehe schon, dass ich das Problem zu eindimensional geschildert habe.
Ich wollte nach Möglichkeit die selben Auslesescripte verwenden, die auch "reine" Perl oder Javascript Datenübergaben handeln.
Wird wohl aber doch einen komplett-umbau nach sich ziehen müssen.
Wohl nicht zu ändern.
Gruß
Andreas
Grüssi,
Was sprach gegen:
<a href="adresse.de/seite.pl?parameter_fuer_perl=wert1¶meter_fuer_javascript=wert2"> ?
Dagegen spricht die länge der url-zeile UND das die scripte selber wissen welcher inhalt wohin gehört, also kein schlüsselname mitgegeben werden muss.
hmmm, ich dachte schon dass die Sache etwas komplexer ist - aber man bietet halt mal das naheliegendste an ;-)
Ich sehe schon, dass ich das Problem zu eindimensional geschildert habe.
Dann erweitere doch die Dimensionen ;-)
-- Aber sei vorsichtig dabei: Zerstöre die Matrix nicht *fg*
Ich wollte nach Möglichkeit die selben Auslesescripte verwenden, die auch "reine" Perl oder Javascript Datenübergaben handeln.
wie sieht denn so ein "Auslesescript" aus von dir? Vielleicht fällt es mit ein bissl Code leichter, dein Problem zu verstehen. Wie lest du die Parameter aus, und wie kommen sie ins Javascript (bzw. wo soll JS was auslesen)?
Wird wohl aber doch einen komplett-umbau nach sich ziehen müssen.
Wohl nicht zu ändern.
Doch, ich werd zwar irgendwann aussteigen, weil mir Cheatah wieder den Kopf mit lauter verschachtelten RegEx'es und $$-Tricks anfüllen wird, aber so unlösbar schaut mir dein Problem nicht aus :-)
lg bernhard
Hi,
<a href="adresse.de/seite.pl?parameter_fuer_perl=wert1¶meter_fuer_javascript=wert2"> ?
Dagegen spricht die länge der url-zeile
unproblematisch.
UND das die scripte selber wissen welcher inhalt wohin gehört,
Wissen sie das? Wissen sie es nicht mehr, wenn man den Konventionen entsprechend agiert?
also kein schlüsselname mitgegeben werden muss.
<a href="adresse.de/seite.pl?wert1&wert2">
Herzlichen Glückwunsch. Du hast die Wartbarkeit der Scripts soeben gegen null reduziert.
Man sollte immer name/value-pairs übergeben. Bei Perl nimmt Dir CGI.pm dann die ganze Parserei ab (die i.d.R. sonst eh falsch gemacht wird), und es ist _deutlich_ leichter, später zusätzliche Informationen unterzubringen.
Ich sehe schon, dass ich das Problem zu eindimensional geschildert habe.
Oder zu eindimensional betrachtet ;-) (Sorry...)
Cheatah
Hallo Bernhard
Was sprach gegen:
<a href="adresse.de/seite.pl?parameter_fuer_perl=wert1¶meter_fuer_javascript=wert2"> ?
Dagegen spricht die länge der url-zeile UND das die scripte selber wissen welcher inhalt wohin gehört, also kein schlüsselname mitgegeben werden muss.
Also:
<a href="adresse.de/seite.pl?wert1&wert2">
sollte ausreichen.
Wenn du immer nur zwei Parameter übergibst kann sich javascript auch alleine um seinen Parameter kümmern. Vorausgesetzt der zweite (oder letzte) Parameter ist für Javascript, dann such einfach aus dem document.URL das letzte "&", schmeiss den Kram davor weg und du hast deinen Parameter. Der Rest ist dann perl-Sache.
Im übrigen muss ich den anderen beipflichten, dass es wohl kaum Sinn machen kann, mit der Konvention zu brechen...;o)
Schick mal Code..
Gruß
Da siehst du offenbar wirklich den bekannten Wald nicht...:-)
Die Parameter werden ganz gewöhnlich übermittel.
<a href="adresse.de/seite.pl?param1=perl¶m2=javascript">
In deinem Perl-Script kannst du den ersten Parameter wie gewohnt auswerten. Den zweiten (oder n-ten) Parameter schreibst du einfach mit print $param2 in deine JavaScript-Funktion bspw. in eine Variable.
Gruß
Sascha
Hi,
Wie bekomme ich das gemixt: Das PerlScript soll einen Parameter übergeben bekommen und das Javascript, welches von dem Perlscript erzeugt wird einen weiteren.
äh... Du willst also zwei Parameter haben. Welches Programm dann welchen verwendet, ist nur für die Programmlogik relevant, nicht für das Aussehen der URL.
http://bla/pfad/zum/script.pl?par=wert&par=wert&par=wert
<a href="adresse.de/seite.pl?parameter_fuer_perl?parameter_fuer_javascript">
Denke dran, daß Du ein "&" innerhalb von HTML-Attributen als "&" kodieren mußt.
Cheatah
... ich dachte eben, ich kriegs mit weniger arbeit hin.
Es handelt sich um eine Site, die bislang "nur" HTML und Javascript verwendet hat und die ich jetzt auf Perl umstricken will.
Und da harken mir eben die beiden (JS/PERL) etwas durcheinander.
Bisher hatte eben Javascript die Alleinherschaft über die URL-Strings und da sahen die Links etwa so aus:
javascript:top.go_link('seite/blatt70.htm?_1_12_70')
... und jetzt sehen sie so aus:
/perl/broschuere.pl?blatt=70&navigation=next
und dann fehlt mir der Rest aus 'blatt70.htm?_1_12_70'
da sich das Javascript aus '_1_12_70' die aufrufe für die anderen Frames (Wegweiser, Menüleisten etc) zsammenbaut.
Ich werde also um die Änderung der gesamten Javascripte nicht umhinkommen.
Vielleicht schmeiss ich aber auch die gesamte JS-Navigation auf den Müll (wenn ich eh schon mal am wegscjmeissen bin) und mache alles (was geht) in Perl.
Trotzdem Danke für die Vorschläge
Gruß
Andreas
Hi,
... ich dachte eben, ich kriegs mit weniger arbeit hin.
die Arbeit machst Du höchstens ein Mal. Mach Dir ruhig auch die Mühen anderer zunutze, die sich mit der Problematik weitaus besser auskennen als Du und ich.
Vielleicht schmeiss ich aber auch die gesamte JS-Navigation auf den Müll (wenn ich eh schon mal am wegscjmeissen bin) und mache alles (was geht) in Perl.
Der Vorteil dessen wäre, daß Deine Besucher nicht zwingend
Wobei Du immer noch diejenigen ausschließt, die JavaScript gar nicht haben _wollen_ oder aber für deren System es gar keinen JavaScript-fähigen Browser gibt (WAP, Blinde... kann WebTV eigentlich JavaScxript?) Gehe von (je nach Site) ca. 20% aus, die Du bei Abhängigkeit von JavaScript ausschließt.
Cheatah