Hallo!
Ist es möglich mittels einer userFunc eine Datenbank zu leeren? Der Redakteur soll auf der Seite in einem seperaten Bereich einen Link anklicken können mit dem er diese Funktion dann auslöst:
class user_delete_list {
function main()
{
$db_link = @mysql_connect($typo_db_host, $typo_db_username, $typo_db_password);
$db_name = "foo";
if($db_link)
{
if(mysql_select_db($db_name))
{
$sql="DELETE * FROM foo_list";
$result = mysql_db_query($sql) OR die(mysql_error());
}
}
}
}
beim TS-Code hab ich folgendes:
temp.LINK = TEXT
temp.LINK {
wrap = <a href="">|</a>
value = liste Leeren
typolink.userFunc = user_delete_list->main
}
aber leider funktioniert das so nicht, kann mir da jemand weiterhelfen?
Gruß, nihilfire
In Deinem Beispiel würde die Datenbank doch schon beim erzeugen des Links gelöscht werden.
Mach einen Link auf eine extra Seite z.B. typolink.parameter = 17 , wo dann ein cObj USER_INT ist, welches die userFunc aufruft.
Dabei aber an includeLibs und Funktionsname mit user_ beginnend denken.
Grüße
Also, ich habe jetzt einen Link zu der neuen Seite erstellt, welche dann die userFunc ausführen soll.
TS auf der neuen Seite:
temp.meinElement = COA
temp.meinElement {
10 = USER_INT
10 {
includeLibs = fileadmin/template/user_klasse.php
userFunc = user_klasse->user_dl
}
}
PHP-Code leicht verändert:
class user_klasse {
function user_dl()
{
$db_username = 'foo';
$db_password = 'foo';
$db_host = 'foo';
$db_link = @mysql_connect($db_host, $db_username, $db_password);
$db_name = "foo";
if($db_link)
{
if(mysql_select_db($db_name))
{
$sql="TRUNCATE TABLE foo";
$result = mysql_db_query($sql) OR die(mysql_error());
}
}
}
}
Es passiert nichts wenn die Seite aufgerufen wird, woran kann das liegen?
Gruß, nihilfire
Versuch mal:
page.includeLibs.doDelete = fileadmin/template/user_klasse.php
temp.meinElement = COA
temp.meinElement {
10 = USER_INT
10 {
userFunc = user_klasse->user_dl
}
}
Danke, es funktioniert jetzt...
🙂