Hallo Tim,
ich bin mal so frei und stelle hier meinen code hinnein, mit dem ich genau Dein Problem für mich gelöst habe.
Da ich dieses Template als Adminberechtigter von der HP aus aufrufen kann habe ich hier noch eine Vergleichsabfrage zur Sessionid (wird bei der Passworteingabe erzeugt)
<perl>
$benutzername="";
if ($sessionid ne "")
{
$sessid=$sessionid;
$sessionid="";
get "sessionid==$sessid", idtable;
if ($sessionid eq $sessid)
{
out "Deine ID ist ";
out $sessid;
get "benutzername==$nickname", admins;
if ($benutzername eq $nickname)
{
out "Du stehst in der Admintabelle";
if ($admintyp eq "10")
{
out "<br>Du bist berechtigt Admintyp=10";
$ja="1";
}
else
{
out "<br>Keine Berechtigung Admintyp ist ",$admintyp;
$ja="0";
}
}
else
{
out "<br>Du stehst nicht in der Admintabelle";
}
}
else
{
out "<br>Deine Sitzung ist abgelaufen";
}
}
else
{
out "<br>Keine Berechtigung, fehlende Sessionid";
}
</perl>
##Hier ist die "Sicherheitsabfrage" zu Ende.##
<perl>
if ($ja eq "1")
{
get "benutzername==*", anmeldungen;
if ($_amount_query eq "0")
{
$anz="1";
out "Keine Aufnahmeanträge vorhanden.";
out "<br><br><br><br>";
}
out "<table width=\"85%\" bgcolor=\"#f6f6b4\">";
out "<tr><td></td><td></td><td>Antrag von</td><td>gestellt am</td><td>Vorname</td><td></td></tr>";
out $benutzename;
get "benutzername==*",anmeldungen ;
while (get_next(anmeldungen))
{
out "<tr bgcolor=\"#cccccc\"><td>";
out "<a href=\"http://baseportal.de/cgi-bin/baseportal.pl?htx=/RogerPeterWerner/P/antraege_pruefen&sessionid=";
out $sessionid;
out "&Id==";
out $_id;
out ">";
out "<font size=\"-1\">lesen</font></a>";
out "</a></td>";
out "<td>";
out "</td>";
out "<td>";
out $benutzername,"</td>";
out "<td>";
##hier wird das Datum in eine leserliche Form gebracht##
out substr($aktivseit,8,2),". ";
out substr($aktivseit,5,2),". ";
out substr($aktivseit,0,4)," um ";
out substr($aktivseit,11,2),". ";
out substr($aktivseit,14,2),"</td>";
##Ende Datum##
out "<td>",$Vorname,"</td>";
out "<td><font size=\"-1\">";
##der Menupunkt zum Löschen wird angezeigt es betrifft nur den Antrag, der in dieser Tabellenzeile steht##
out "<a href=\"http://baseportal.de/cgi-bin/baseportal.pl?htx=/RogerPeterWerner/P/antrag_loeschen&sessionid=";
out $sessionid;
out "&Id==";
out $_id;
out "\">";
out "löschen</a></font></td></tr>";
}
##Ende löschen##
out "</table><br><br><center>";
}
else
{
out "<br>Es wird aus Sicherheitsgründen nichts angezeigt";
}
</perl>
<perl>
##hier wird eine Sicherheitskopie erzeugt,##
##ist wichtig, wenn mehrere Leute die Anträge##
##bearbeiten, oder Du selbst zu schnell auf ##
##"löschen" geklickt hast##
get "aktiv=ja","anmeldungen","holen";
while (get_next("holen"))
{
%_put=%_loop;
$_put{_amount}=1;
delete $_put{_id};
delete $_put{Id};
out $benutzername," wird jetzt kopiert";
put undef,"anmeldungen_Kopie";
undef %_put;
}
}
</perl>
<perl>
##ich habe mich entschlossen, alle Anträge,##
##die nicht gelöscht wurden mit einem##
##gemeinsamen "klick" anzunehmen, der ##
##Menupunkt wird hier erzeugt##
out "<a href=\"http://baseportal.de/cgi-bin/baseportal.pl?htx=/RogerPeterWerner/P/antrag_annehmen&sessionid=";
out $sessionid;
out "\">";
out "Alle übrigen Anträge annehmen</a><br>";
out "</a><br><br>";
##Antragsdaten werden auf Wunsch komplett angezeigt##
if ($anz ne "1")
{
if ($ja eq "1")
{
out "<table bgcolor=\"cccccc\" width=\"85%\">";
out "<tr><td valign=\"top\">";
get "Id==$id",anmeldungen;
out "Von</td><td valign=\"top\">";
out $benutzername;
out "</td><td bgcolor=\"fcfcbb\" valign=\"top\">";
out "sucht fur ",$Fuer;
out "</td></tr>";
out "<tr><td valign=\"top\">";
out "Vorname</td><td valign=\"top\">";
out $Vorname;
out "</td><td bgcolor=\"#f6f6b4\" valign=\"top\" rowspan=\"3\">";
out "<table width=\"99%\">";
out "<tr><td>",$Ich_bin," sucht ",$Ich_suche,"</td></tr>";
out "<tr><td>Geburtstag am ";
if ($geburtstag gt "1900")
{
out substr($geburtstag,8,2),". ";
out substr($geburtstag,5,2),". ";
out substr($geburtstag,0,4),"</td></tr>";
}
else
{
out "nicht angegeben";
}
out "</td></tr>";
out "<tr><td>Größe: ",$Groesse,"cm <br>Gewicht: ",$Gewicht,"kg</td></tr>";
out "<tr><td>Haarfarbe: ",$Haarfarbe,"</td></tr>";
out "<tr><td>Frisur: ",$Frisur,"</td></tr>";
out "<tr><td>Raucher: ",$Rauchen,"</td></tr>";
out "<tr><td>Kinder: ",$Kinder_habe_ich," bei ",$Sie_leben_bei,"</td></tr>";
out "<tr><td>Du darfst Kinder haben: ",$Du_darfst_Kinder_haben,"</td></tr>";
out "<tr><td><br>ich biete:<br>",$Ich_biete,"</td></tr>";
out "<tr><td><br>und erwarte:<br>",$Wen_ich_suche,"</td></tr>";
out "<tr><td><br>Ich mag:<br>",$Das_mag_ich,"</td></tr>";
out "<tr><td><br>das nicht:<br>",$Das_nicht,"</td></tr>";
out "<tr><td><br>Emailadresse:<br>",$email,"</td></tr>";
out "</table>";
out "</td></tr>";
out "<tr>";
out "<td valig=\"top\">Am</td>";
out "<td valign=\"top\">";
out substr($aktivseit,8,2),".";
out substr($aktivseit,5,2),".";
out "</tr>";
out "</td></tr><tr><td height=\"10\"></td><td></td><td></td></tr><tr><td height=\"10\">";
out "<a href=\"http://baseportal.de/cgi-bin/baseportal.pl?htx=/RogerPeterWerner/P/antrag_loeschen&sessionid=";
out $sessionid;
out "&Id==";
out $_id;
out "\">";
out "Löschen</a><br>";
out "</a>";
out "</td><td align=\"right\">";
}
else
{
out "<br>Bitte schließe dieses Fenster mit der Browserfunktion";
}
}
</perl>
##Ende Template zur Anzeige aller Neuanträge##
Hier nun das Template, welches aufgerufen wird um die Übernahme zu bewerkstelligen.
in meinem Fall werden einzelne Felder des Antrages auch in die Datenbank "Bilder" sowie "Huettentexte" übernommen. Also insgesamt mit 3 Datenbanken gearbeitet.
Name des Templates: "antrag_annehmen"
<perl>
get "Id==*","anmeldungen";
while (get_next "anmeldungen")
{
delete $_put{_id};
delete $_put{Id};
out $benutzername," wird jetzt geschrieben im Huettentext<br>";
put ["eigentuemer",$benutzername,"huettentext","<center>Hier bitte Deinen Freitext, inc. HTML einfügen. <br><br>Auch Bilder sind möglich<br><br><img src=\"http://www.niederrhein-singles.de/assets/images/tb_47173.gif\"><br><br>Codes sind auf der Seite von superadmin und unter dem Menupunkt Anleitungen erklärt </center>"],"huettentexte";
}
$Id="";
get "Id==*","anmeldungen";
while (get_next "anmeldungen")
{
delete $_put{_id};
delete $_put{Id};
out $benutzername," wird jetzt geschrieben in Bilderliste<br>";
put ["eigentuemer",$benutzername,"bildpfad","http://www.niederrhein-singles.de/Photo/000.gif","bildnummer","2"],"bilder";
}
if ($cmd eq "")
{
get "aktiv=ja","anmeldungen","holen";
while (get_next("holen"))
{
%_put=%_loop;
$_put{_amount}=1;
delete $_put{_id};
delete $_put{Id};
out $benutzername," wird jetzt als Benutzer aktzeptiert<br>";
put undef,"benutzerverwaltung";
undef %_put;
del "Id==$_id","anmeldungen";
}
}
</perl>
Das Template zum löschen eines Antrages kommt nun.
Name des Templates: "antrag_loeschen"
<BODY NOF="(MB=(ZeroMargins, 0, 0, 0, 0), L=(HomeLayout, 500, 1124))" BGCOLOR="#DDDDDD" TEXT="#000000" LINK="#0033CC" VLINK="#990099" ALINK="#FF0000" TOPMARGIN=0 LEFTMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
<br><br><br><br><br><br>
<h1 align="center">Du hast den Antrag von $benutzername gelöscht</h1>
<perl>
$tmpid=$Id;
if ($cmd eq "")
{
get "Id==$tmpid",anmeldungen;
while (get_next("anmeldungen"))
{
%_put=%_loop;
$_put{_amount}=1;
delete $_put{_id};
delete $_put{Id};
out $benutzername," wird jetzt kopiert";
put undef,"anmeldungen_Kopie";
undef %_put;
}
}
$huette="";
$sid=$sessionid;
get "sessionid==$sid", idtable;
if ($sessionid eq $sid)
{
del "Id==$tmpid",anmeldungen;
}
$sessionid=$sid;
</perl>
<center>
<br><br><br>
</center>
ich hoffe, daß Du damit etwas anfangen kannst und wenn Du Verbesserungen findest, mich daran teilhaben läßt *grins*
Liebe Grüße
Roger