Schrift
[thread]30[/thread]

urlencoding: urlencoding



<< |< 1 2 >| >> 17 Einträge, 2 Seiten
superwebba
 2003-09-09 14:46
#2744 #2744
User since
2003-09-09
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo,
wie kann ich aus einem link der Form:
http://host/test.cgi?id=test&a=2467&b=11245&page=http://www.test.de/onlineshop/tmpl?lan=2&cod=1&aid=14310

den Parameter page rausfiltern, so dass die ganze URL dran ist, also:
http://www.test.de/onlineshop/tmpl?lan=2&cod=1&aid=14310
und nicht nur
http://www.test.de/onlineshop/tmpl?lan=2
?

Ralf
--
ich bin root, ich darf das!
pq
 2003-09-09 15:27
#2745 #2745
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
gar nicht, denn das ist kein gültiger link. zeichen wie & und ? (und andere
zeichen) müssen codiert sein. vielleicht war das auch deine eigentliche frage,
wie man so einen link erstellt? naja, du musst die keys und werte codieren, und
zwar am besten mit URI::Escape
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
renee
 2003-09-09 15:30
#2746 #2746
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Wieso sollte das kein gültiger Link sein?? Wenn Du Formulardaten mit GET verschickst, sieht dein Link so aus...
So wie hier: http://www.google.de/search?....10&sa=N
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
SirLant
 2003-09-09 15:46
#2747 #2747
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Ja, aber #1 hat als einen Parameter ne url mit Parametern.
Da muss er die Parameter alle wie pq richtig erkannte
URI::Escape kodieren
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
superwebba
 2003-09-09 15:50
#2748 #2748
User since
2003-09-09
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
ok, habs auch schon probiert, kriegs nur nicht hin...

kann einer ein Bsp. zeigen???
--
ich bin root, ich darf das!
jan
 2003-09-09 15:57
#2749 #2749
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code (perl): (dl )
1
2
use URI::Escape;
my $encoded = uri_escape("10% is enough\n");



http://www.perldoc.com/perl5.8.0/lib/URI/Escape.html\n\n

<!--EDIT|jan|1063108670-->
SirLant
 2003-09-09 16:06
#2750 #2750
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Schreib das doch ganz einfach so:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
sub encode {
  $param = shift;
  $param =~ s|\?|55X77X85X4|g;
  $param =~ s|\&|33X56X89X3|g;
  return $param;
}
sub decode {
  $param = shift;
  $param =~ s|55X77X85X4|\?|g;
  $param =~ s|33X56X89X3|\&|g;
  return $param;
}

Dann machste vorm übergeben der url an den parameter page
folgendes:
Code (perl): (dl )
1
2
3
4
$page = encode ($page);

#Und zum dekodieren
$page = decode ($page);


Wäre ne Möglichkeit

Edit: Fehler im Skript behoben\n\n

<!--EDIT|SirLant|1063111894-->
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
jan
 2003-09-09 16:27
#2751 #2751
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
sirlant, hast du den code mal getestet oder mal einen kritischen blick auf deinen regexp geworfen?
superwebba
 2003-09-09 16:33
#2752 #2752
User since
2003-09-09
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
okok...
aber ich hab ja schon den ganzen Link also muss der Parameter page schon beim anklicken kodiert sein... oder wie kann ich das sonst machen????
--
ich bin root, ich darf das!
jan
 2003-09-09 16:43
#2753 #2753
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
was hast du denn genau? wird der parameter von einer seite ausgegeben, die du einliest?
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2003-09-09 14:46.