Schrift
[thread]466[/thread]

post ohne formular



<< |< 1 2 >| >> 13 Einträge, 2 Seiten
tina
 2005-03-23 18:18
#4659 #4659
User since
2005-01-10
5 Artikel
BenutzerIn
[default_avatar]
hi,

habe eine kleine Problem.
Ich möchte ein sql-statement - also ein Parameter einem cgi-script übergeben, aber dabei post benutzen, da es doch sehr lang ist.

Wie muß ich das anstellen, wenn ich das cgi-script über einen Link
aufrufe und kein Formular habe.

thx
tina
[E|B]
 2005-03-23 18:23
#4660 #4660
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Hallo tina und Willkommen auf Perl-Community.de!

Du übergibst deinem Script einfach die Werte als Parameter:

Code: (dl )
script.cgi?action=myparam


Die Parameter kannst du dann innerhalb deines Scripts mit CGI.pm auslesen.
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
renee
 2005-03-23 18:24
#4661 #4661
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Wenn Du es über einen Link machst, dann geht es nicht mit POST...

Außerdem rate ich davon ab, ein SQL-Statement von einem Benutzer festlegen zu lassen. Da könnten SQL-Injections stattfinden, was bestimmt nicht lustig ist!

edit: auch von mir ein Herzliches Willkommen auf Perl-Community.de\n\n

<!--EDIT|renee|1111595147-->
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/
renee
 2005-03-23 18:25
#4662 #4662
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
[E|B
,23.03.2005, 17:23]Du übergibst deinem Script einfach die Werte als Parameter:

Code: (dl )
script.cgi?action=myparam

Dann ist es GET und _nicht_ POST...
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/
[E|B]
 2005-03-23 18:30
#4663 #4663
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Hab später erst bemerkt, dass sie POST wollte. Hast natürlich Recht, renee!
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
ptk
 2005-03-23 19:10
#4664 #4664
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Mit Javascript koennte man ein Formular, welches ein Hidden-Field mit dem sehr langen Text enthaelt, programatisch ausloesen (etwa:
Code: (dl )
<a href="#" onclick="document.forms[0].submit()">...</a>
)

Aber wie hier schon gesagt wurde, besser ist es, wenn z.B. eine Session angelegt wird und der SQL-String in der Session enthalten ist.
jan10001
 2005-03-23 19:10
#4665 #4665
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
Eigentlich verweist ja meist @pq auf perldoc, aber diesesmal tu ich es. ;)
Schau mal hier: perldoc lwpcook
http://www.perldoc.com/perl5.8.0/lib/lwpcook.html
betterworld
 2005-03-23 22:26
#4666 #4666
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
[quote=jan10001,23.03.2005, 18:10]Eigentlich verweist ja meist @pq auf perldoc, aber diesesmal tu ich es. ;)
Schau mal hier: perldoc lwpcook
http://www.perldoc.com/perl5.8.0/lib/lwpcook.html[/quote]
jan10001: Ich kann mir nicht vorstellen, dass LWP da irgendwie hilft.. Schliesslich ist LWP ja Perl, und Perl läuft nur auf dem Server, somit bleibt das Problem, wie wir die Daten vom Browser zum Server bekommen
jan10001
 2005-03-23 23:05
#4667 #4667
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
@betterworld
Ich nahm an das ein cgi-script das sql-statement an ein anderes übergeben soll. Was anderes macht für mich eigentlich keinen Sinn, da ja das Statement sonst statisch wäre und in dem Fall gäbe es andere Optionen.
Strat
 2005-03-23 23:37
#4668 #4668
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
direkt ueber die url geht das nicht, und via GET ist auch die Laenge der Parameter beschraenkt (irgendwas zwischen 256 und 512 zeichen, glaube ich); man koennte post mit einer form machen, z.B.
Code: (dl )
1
2
3
4
<form action="zielscript.cgi" method="POST">
<input type="hidden" name="sql" value="$sqlStatement" />
<input type="submit" name="button" value="Absenden" />
</form>

ev. koennte man das submitten der form auch ueber javascript ausloesen... aber dann ist diese seite wieder vom aktiviert sein von javascript abhaengig...

besser - wie schon gesagt - eine sessionid generieren, das statement auf dem server zwischenspeichern, und dann wieder zurueckholen; ist auch - wie schon gesagt - um einiges sicherer, weil der user das sql-statement nicht veraendern kann...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< |< 1 2 >| >> 13 Einträge, 2 Seiten



View all threads created 2005-03-23 18:18.