Beitrag von Ralf (143 Beiträge) am Montag, 10.Juni.2002, 16:04.
na super......!
Hilfe!
Da hatte ich mir doch mit der Hilfe der BP-Gemeinde ein Form gebastelt, mit welcher der User seine Daten ändern konnte.
Aber irgendwie habe ich es auch geschafft das Template zu löschen. -prima-
Habe jetzt versucht es neu zu erstellen (hab natürlich keine Sicherung erstellt).
Aber irgendwie werden die Daten nicht übernommen (hatte das Problem schon mal), finde aber den passenden Forumeintrag nicht.
Wer hilft mal so auf die "schnelle"??
Der Link für die Übergabe der ID:
<a href=http://baseportal.de/cgi-bin/baseportal.pl?htx=meine&db=nutzer&nutzerId=$nutzerId> Nutzerdaten</a>
Und hier das Form:
<perl>
if ($cmd eq "")
{
get "Id==$nutzerId", "nutzer";
out <<EOF;
<h3>Eintrag ändern</h3>
<table>
<form action='http://baseportal.de/cgi-bin/baseportal.pl?htx=$htx' method='post' enctype='multipart/form-data'>
<input type=hidden name="Id:=" value="$_id">
<input type=hidden name='htx=' value='$htx'>
<input type=hidden name='cmd=' value='add'>
<tr><td colspan='2'>Ihre Nutzerdaten:</td></tr>
<tr><td align=right>Name:</td><td>
<input type='text' name='Name:=' size=25 value='$Name'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Vorname:</td><td>
<input type='text' name='Vorname:=' size=25 value='$Vorname'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Strasse:</td><td>
<input type='text' name='Strasse:=' size=30 value='$Strasse'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>PLZ:</td><td>
<input type='text' name='PLZ:=' size=10 value='$PLZ'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Ort:</td><td>
<input type='text' name='Ort:=' size=30 value='$Ort'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Telefon:</td><td>
<input type='text' name='Telefon:=' size=20 value='$Telefon'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>EMail:</td><td>
<input type='text' name='EMail:=' size=30 value='$EMail'></td></tr>
<tr><td align=right>Passwort:</td><td>
<input type='passwort' name='Passwort:=' size=25 value='$Passwort'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right> </td>
<td><font color='#CC3333'><br>*Eingabe wird benötigt. Bitte korrekt ausfüllen! </font></td>
</tr>
<tr><td></td><td nowrap>
<input type=submit value='Ändern'>
<input type=reset value='Zurücksetzen'></td></tr>
</form>
</table>
EOF
}elsif ($cmd eq "add")
{
mod "Id==$Id", undef, "nutzer";
out "Ihr Eintrag wurde geändert...";
}
</perl>
Der Fehler steckt halt im Detail ;-)
Antworten
Beitrag von Sander (8133 Beiträge) am Montag, 10.Juni.2002, 16:17.
Re: na super......!
ändere <input type=hidden name="Id:=" value="$_id">
mal gegen <input type=hidden name="Id=" value="$_id">
Die Id sollte man nicht ändern ;-)
Sander
Antworten
Beitrag von Ralf (143 Beiträge) am Montag, 10.Juni.2002, 19:03.
Re: na super......!
Der Teufel ist zwar ein Eichhörnchen, aber hier liegt der Fehler nicht.
Ich dachte eher an den unteren Teil, das hier das $ID nicht hinhaut. NON LOSSO
Antworten
Beitrag von Sander (8133 Beiträge) am Montag, 10.Juni.2002, 19:05.
Re: na super......!
ist das alles an code oder hast du noch mehr in der seite?
lass dir mal die Id vor dem mod anzeigen...
Sander
Antworten
Beitrag von Ralf (143 Beiträge) am Montag, 10.Juni.2002, 19:53.
Re: na super......!
Einloggen mit Link:
<perl>
if($pwrein ne "")
{
get "Passwort==!$pwrein","nutzer";
if($Name ne "" && $Name eq $namerein)
{
$nutzerId=$_id;
out <<EOF;
<a href=http://baseportal.de/cgi-bin/baseportal.pl?htx=mein_editiertemplate&db=nutzer&nutzerId=$nutzerId> Nutzerdaten </a>
#Passwort falsch
} else
{
out "<b>Ihre Anmeldung ist fehlgeschlagen!</b><br><br>";
$namerein="";
}
}
if($namerein eq "")
{
out <<EOF;
<table width="100%" border="0" cellspacing="5" cellpadding="10"><tr><td><p>Bitte melden Sie sich an: </p>
<form action="/cgi-bin/baseportal.pl?htx=mein_editieren_start" method="post" enctype="multipart/form-data">
<input type=hidden name="htx=" value="$htx">
<table width="50%" border="0" cellspacing="0" bgcolor="333333"><tr><td>
<table width="100%" bgcolor="#C4C4C4" cellspacing="5">
<tr><td>Name:</td><td>
<input type="text" name="namerein=">
</td></tr><tr><td>Passwort:</td><td>
<input type="password" name="pwrein=">
</td></tr><tr><td height="2"></td>
<td height="2"><input type=submit value="Anmelden" name="submit" class="inputbutton">
</td></tr></table></td></tr></table></form>
mein_editiertemplate:
<perl>
if ($cmd eq "")
{
get "Id==$nutzerId", "nutzer";
out <<EOF;
<h3>Eintrag ändern</h3>
<table>
<form action='http://baseportal.de/cgi-bin/baseportal.pl?htx=$htx' method='post' enctype='multipart/form-data'>
<input type=hidden name="Id=" value="$_id">
<input type=hidden name='htx=' value='$htx'>
<input type=hidden name='cmd=' value='add'>
<tr><td colspan='2'>Ihre Nutzerdaten:</td></tr>
<tr><td align=right>Name:</td><td>
<input type='text' name='Name:=' size=25 value='$Name'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Vorname:</td><td>
<input type='text' name='Vorname:=' size=25 value='$Vorname'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Strasse:</td><td>
<input type='text' name='Strasse:=' size=30 value='$Strasse'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>PLZ:</td><td>
<input type='text' name='PLZ:=' size=10 value='$PLZ'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Ort:</td><td>
<input type='text' name='Ort:=' size=30 value='$Ort'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>Telefon:</td><td>
<input type='text' name='Telefon:=' size=20 value='$Telefon'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right>EMail:</td><td>
<input type='text' name='EMail:=' size=30 value='$EMail'></td></tr>
<tr><td align=right>Passwort:</td><td>
<input type='passwort' name='Passwort:=' size=25 value='$Passwort'><font color='#CC3333'>*</font></td></tr>
<tr><td align=right> </td>
<td><font color='#CC3333'><br>*Eingabe wird benötigt. Bitte korrekt ausfüllen! </font></td>
</tr>
<tr><td></td><td nowrap>
<input type=submit value='Ändern'>
<input type=reset value='Zurücksetzen'></td></tr>
</form>
</table>
EOF
}elsif ($cmd eq "add")
{
mod "Id==$Id", undef, "nutzer";
out "Ihr Eintrag wurde geändert...";
}
</perl>
Thats all...
Antworten
Beitrag von Sander (8133 Beiträge) am Montag, 10.Juni.2002, 20:19.
Re: na super......!
war bei dir nicht irgendwas mit refererüberprüfung?
Sander
Antworten
Beitrag von Ralf (143 Beiträge) am Montag, 10.Juni.2002, 20:33.
Re: na super......!
Ja, ja der soll noch kommen, ist aber noch nicht implementiert. Also ist das der derzeitige Code. Wie gesagt, hat schon mal funktioniert, aber weiß nicht mehr wie.
Antworten
Beitrag von Ralf (143 Beiträge) am Dienstag, 11.Juni.2002, 20:53.
Re: na super......!
Antworten
Beitrag von Ralf (143 Beiträge) am Mittwoch, 12.Juni.2002, 22:25.
Re: na super......!
Hallo Sander, bitte vergiss mich nicht. Es können allerdings auch andere helfen....
Antworten
Beitrag von Sander (8133 Beiträge) am Mittwoch, 12.Juni.2002, 23:12.
Re: na super......!
hast du dir die Id vor put mal ausgeben lassen?
kannst den teil
auch mal so schreiben:
wird "Ihr Eintrag wurde geä..." ausgegeben?
Antworten
Beitrag von Ralf (143 Beiträge) am Donnerstag, 13.Juni.2002, 21:09.
Re: na super......!
Weiß zwar nicht ganz wie ich mir die ID vor put ausgeben lasse, aber wenn Du den Quellcode meinst in der Editiermaske, dann stimmt hier die Id. Habe es auch mal mit %_put probiert, geht auch nicht. Und der Eintrag "Ihr Eintrag wurde geä..." wird auch immer ausgegeben.
Was jetzt?
Antworten
Beitrag von Sander (8133 Beiträge) am Donnerstag, 13.Juni.2002, 21:50.
Re: na super......!
Antworten
Beitrag von Ralf (143 Beiträge) am Donnerstag, 13.Juni.2002, 22:01.
Re: na super......!
Genau hier wird ne falsche ID ausgegeben. Warum? warum wird die vorher überschrieben?
Antworten
Beitrag von Sander (8133 Beiträge) am Freitag, 14.Juni.2002, 00:19.
Re: na super......!
mach mal ein beispieltemplate wo man sich das anschauen kann...
Antworten
Beitrag von Ralf (143 Beiträge) am Sonntag, 16.Juni.2002, 01:39.
Re: na super......!
Antworten
Beitrag von Sander (8133 Beiträge) am Sonntag, 16.Juni.2002, 14:23.
Re: na super......!
so, jetzt halt radikal... ich kann keine stelle finden, wo die Id verloren geht..
schrieb im Formular
<input type=hidden name="nutzerId=" value="$_id">
und im mod:
mod "Id==$nutzerId", undef, "nutzer";
und überprüf zum testen vor mod die $nutzerId (out $nutzerId;)
irgendwann muß da ja mal klappen
Sander
Antworten
Beitrag von Ralf (143 Beiträge) am Sonntag, 16.Juni.2002, 17:57.
Re: na super......!
..... jetzt aber! was ist daran radikal wenn es funktioniert? danke Dir. jetzt kann ich beruhigt in urlaub fahren.......
Antworten
Beitrag von Sander (8133 Beiträge) am Sonntag, 16.Juni.2002, 22:35.
Re: na super......!
Antworten
Beitrag von Joerg (159 Beiträge) am Sonntag, 16.Juni.2002, 07:26. WWW: pirateninsel.net
Re: na super......!
Wenn man aber noch einem Login am Schluß der URL die ID ändert, kann man die anderen Datensätze sehen ...
Antworten
Beitrag von Ralf (143 Beiträge) am Sonntag, 16.Juni.2002, 10:18.
Re: na super......!
kenn die sicherheitslücke. is noch nicht geschlossen, aber das script ist fertig ;-)
Antworten