Beitrag von thomas (3 Beiträge) am Montag, 14.Mai.2012, 12:10.
eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
hallo,
ich versuche einen eintrag per formular zu ändern - will einfach nicht!
die db hat alle rechte.
testlink:
http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular&name==tom
<perl>
get "name==$name", "daten";
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular&name==$name&db=daten&cmd=mod" method=post enctype="multipart/form-data">
<input type="hidden" name="cmd=" value="mod">
<input type="hidden" name="name:=" value="$name">
<input type="hidden" name="db:=" value="daten">
name: <input type="text" name="name:=" value="$name"><br>
text: <textarea name="text:=" value="$text" cols=40 rows=7>$text</textarea>
<input type="submit" value="senden" />
</perl>
was mache ich falsch?
thomas
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.Mai.2012, 12:18. WWW: hammoniaweb.com
Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Anscheinend alles...;)
Du schickst die Daten über das Formular an ...baseportal.pl?htx=/thomas_sepp/formular.....
entweder muß da ein <do action=all oder do_all rein oder Du mußt da perlcode für das ändern einfügen, siehe dazu:
http://doku.baseportal.de/51.html
Gruesse
Claus
Antworten
Beitrag von thomas (3 Beiträge) am Montag, 14.Mai.2012, 12:43.
Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
ich hab`s jetzt mal so versucht, aber irgendwie ist es jetzt sehr verworren.
gerade wenn ich 3 textfelder habe und nur eines ändere.??!?!
thomas
<perl>
mod "name==!$name", ["text", "$text", "text1", "$text1", "text2", "$text2"], "daten";
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular&name==$name" method=post enctype="multipart/form-data">
<input type="hidden" name="cmd=" value="mod">
<input type="hidden" name="name:=" value="$name">
<input type="hidden" name="db:=" value="daten">
name: <input type="text" name="name:=" value="$name"><br>
text: <textarea name="text:=" value="" cols=40 rows=7>$text</textarea>
text1: <textarea name="text1:=" value="" cols=40 rows=7>$text1</textarea>
text2: <textarea name="text1:=" value="" cols=40 rows=7>$text2</textarea>
<input type="submit" value="senden" />
</perl>
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.Mai.2012, 12:49. WWW: hammoniaweb.com
Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Was soll name==$name in der URL beim Formular??
Außerdem fehlt da noch was..;)
<perl>
if ($cmd eq "mod")
{
mod "name==!$name", ["text", "$text", "text1", "$text1", "text2", "$text2"], "daten";
}
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular" method=post enctype="multipart/form-data">
<input type="hidden" name="cmd=" value="mod">
<input type="hidden" name="name:=" value="$name">
<input type="hidden" name="db:=" value="daten">
name: <input type="text" name="name:=" value="$name"><br>
text: <textarea name="text:=" value="" cols=40 rows=7>$text</textarea>
text1: <textarea name="text1:=" value="" cols=40 rows=7>$text1</textarea>
text2: <textarea name="text1:=" value="" cols=40 rows=7>$text2</textarea>
<br>
<input type="submit" value="senden" />
</form>
EOF
</perl>
Sollte so funktionieren...
hth
Gruesse
Claus
Antworten
Beitrag von thomas (3 Beiträge) am Montag, 14.Mai.2012, 13:00.
Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.Mai.2012, 13:08. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Du erwartest doch wohl nicht, daß Dir hier jemand Deine Anwendung kostenlos proggt, oder?
;)
im übrigen ist da noch text1 2x drin, also so ändern:
<perl>
if ($cmd eq "mod")
{
mod "name==!$name", ["text", "$text", "text1", "$text1", "text2", "$text2"], "daten";
}
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular" method=post enctype="multipart/form-data">
<input type="hidden" name="cmd=" value="mod">
<input type="hidden" name="name:=" value="$name">
<input type="hidden" name="db:=" value="daten">
name: <input type="text" name="name:=" value="$name"><br>
text: <textarea name="text:=" cols=40 rows=7>$text</textarea>
text1: <textarea name="text1:=" cols=40 rows=7>$text1</textarea>
text2: <textarea name="text2:=" cols=40 rows=7>$text2</textarea>
<br>
<input type="submit" value="senden" />
</form>
EOF
</perl>
Gruesse
Claus
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.Mai.2012, 12:54. WWW: hammoniaweb.com
Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Acja value gehört eigentlich nicht in textarea, also so:
<perl>
if ($cmd eq "mod")
{
mod "name==!$name", ["text", "$text", "text1", "$text1", "text2", "$text2"], "daten";
}
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular" method=post enctype="multipart/form-data">
<input type="hidden" name="cmd=" value="mod">
<input type="hidden" name="name:=" value="$name">
<input type="hidden" name="db:=" value="daten">
name: <input type="text" name="name:=" value="$name"><br>
text: <textarea name="text:=" cols=40 rows=7>$text</textarea>
text1: <textarea name="text1:=" cols=40 rows=7>$text1</textarea>
text2: <textarea name="text1:=" cols=40 rows=7>$text2</textarea>
<br>
<input type="submit" value="senden" />
</form>
EOF
</perl>
Gruesse
Claus
Antworten
Beitrag von thomas (3 Beiträge) am Montag, 14.Mai.2012, 13:18.
Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
hallo claus,
was aber irritiert, ist das nach "senden" das formular leer ist.
klick ich ein 2. mal drauf, ist der inhalt wieder da!
thomas
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.Mai.2012, 13:27. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Logisch, denn um einen Datensatz zu ändern, muß man ihn erst einmal holen, siehe:
http://doku.baseportal.de/48.html
Gruesse
Claus
PS: das Forum dient der Hilfe zur Selbsthilfe.....;)
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.Mai.2012, 19:51. WWW: hammoniawe.com
Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Antworten
Beitrag von thomas (3 Beiträge) am Dienstag, 15.Mai.2012, 07:29.
Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 07:49. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Moin,
mir ist wirklich nicht klar, was Du eigentlich damit bezwecken willst...?
Ein Formular mit einem bestimmten Namen aufrufen, dieses Formular abschicken und dann wieder füllen und wieder abschicken, am besten noch per refresh...
Soll das so eine Art "Datenbank-"Perpetuum mobile werde...;)
Gruesse
Claus
Antworten
Beitrag von thomas (3 Beiträge) am Dienstag, 15.Mai.2012, 08:17.
Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
moin claus,
ich habe z.b. 20 schüler, jeder hat seinen db-eintrag und kann den inhalt dort nach belieben ändern, indem er den pfad mit seiner erweiterung(in diesem fall der name) ergänzt.
das ganze möchte ich gerne über ein formular regeln und nicht über das baseportal-eigene do action...
grüße
thomas
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 08:26. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Hi Thomas,
dann kann ich Dir jetzt schon sagen, das geht in die Hose!
Ruf mal Deinen Link auf. Da kannst Du in der Browserzeile jeden x-beliebigen Namen nehmen und dann abschicken. Wenn also Willi Frust mit Otto hat, ruft er seinen "eigenen" Link auf, ändert in der Browserzeile den Namen auf Otto und schreibt da irgendwelchen Blödsinn rein...
Du solltest lieber die normale Datenbank mit Passwortschutz versehen und dann bei <do action=all Name==$_user .....> reinpinseln.
Dann sieht jeder nur seinen eigenen Datensatz. Das ist allemal sicherer.
Rechteverwaltung:
http://doku.baseportal.de/651.html
und
http://doku.baseportal.de/1466.html
Gruesse
Claus
Antworten
Beitrag von thomas (3 Beiträge) am Dienstag, 15.Mai.2012, 08:54.
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
hallo claus,
das geht nicht in die hose :-)
wie gesagt, möchte ich das do action nicht nutzen, sondern über ein formular gestalten, was aber anscheinend leider nicht zu gehen scheint.
thomas
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 08:58. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Antworten
Beitrag von thomas (3 Beiträge) am Dienstag, 15.Mai.2012, 09:10.
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
hey! das ich das nicht gemerkt habe! ich bin aber auch ein schlumpf!
gut das du es erwähnst !!!!!!!
HALLO?!?
das soll ja auch nicht dein problem sein.
heißt im grunde, das es nicht geht, ist schade.
thomas
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 09:24. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Geht nicht, gibt's nicht....
Wie gesagt, mit Passwortschutz funktioniert es, da kann dann wirklich nur jeder seinen eigenen Datensatz sehen und bearbeiten....
Gruesse
Claus
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 09:13. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Falls Du aber an diesem unsicheren Prinzip festhalten möchtest, ändere mal das Script:
<perl>
if ($cmd eq "")
{
get"name==$name", "hier Dein Datenbankname";
}
if ($cmd eq "mod")
{
mod "name==!$name", ["text", "$text", "text1", "$text1", "text2", "$text2"], "daten";
}
out <<EOF;
<form action="http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular" method=post enctype="multipart/form-data">
<input type="hidden" name="cmd=" value="mod">
<input type="hidden" name="name:=" value="$name">
<input type="hidden" name="db:=" value="daten">
name: <input type="text" name="name:=" value="$name"><br>
text: <textarea name="text:=" cols=40 rows=7>$text</textarea>
text1: <textarea name="text1:=" cols=40 rows=7>$text1</textarea>
text2: <textarea name="text2:=" cols=40 rows=7>$text2</textarea>
<br>
<input type="submit" value="senden" />
</form>
EOF
</perl>
<do action=all ....... hier Deine weiteren Parameter.....>
<perl>
if ($cmd eq "mod")
{
$cmd="";
$_header="Location: http://baseportal.de/cgi-bin/baseportal.pl?htx=/thomas_sepp/formular&name=$name\n\n";
}
</perl>
hth
Gruesse
Claus
Antworten
Beitrag von thomas (3 Beiträge) am Dienstag, 15.Mai.2012, 09:36.
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
hallo claus,
es kommt doch ganz darauf an, wofür man es verwendet!
in meinem fall ist es in keinster weise unsicher und
vom der handhabung optimal.
auch wenn es dir widerstrebt, ist die lösung perfekt.
danke
thomas
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 09:50. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
keine Ursache, wenn Du damit leben kannst...;)
Gruesse
Claus
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.Mai.2012, 10:06. WWW: hammoniaweb.com
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: eintrag über formular zu ändern geht nicht - keine änderung wird vorgenommen
Antworten