phpbar.de logo

Mailinglisten-Archive

Re: [php] Einfaches Beispiel
Archiv Mailingliste php_(at)_infosoc.uni-koeln.de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [php] Einfaches Beispiel



> On Fri, 19 Feb 1999 13:17:24 +0100, Daniel Stüwe wrote:
> 
> >NOCH nicht aus der DB gelöscht nach einer bestimmten Expire-Time.
> >Hat dafuer jemand eine Lösung ?

Hmm, ich habe da mal ein PHP-Script als crontab-job gebaut,
kann aber sein, dass es zu speziell fuer dich ist:

--------------------
#!/usr/local/bin/php -q
<?php
$DBF=    $argv[1]; // database
$TBL=    $argv[2]; // table in database
$DATFLD= $argv[3]; // date-field in table
$EXPIRE= $argv[4]; // expire days
$ACTION= $argv[5]; 

/*
What it does:

Open table $TBL in Database $DBF and delete every record, in which the
unix timestamp of $DATFLD is older than $EXPIRE days.
*/

$now= time();
$now -= (86400 * $EXPIRE) ;  // 86400 <> 1 day :-)
msql_connect("localhost");
$result= msql($DBF, "select * from $TBL WHERE $DATFLD < '$now'");
$num= msql_numrows($result);

echo "$DBF/$TBL: [$num] records older than $EXPIRE days.\n";
if(isset($ACTION) && strtoupper($ACTION)=="DELETE")
  {
  $result= msql($DBF, "delete from $TBL WHERE $DATFLD < '$now'");
  echo "*** [$num] records deleted ***\n";
  }
?>
--------------------


Aufruf (z.b. aus der crontab) dann:

scriptname database table field expir_days [delete]

By(e) Emu

--
| Emilio Paolini <ep_(at)_IM-NETZ.de>......................... 13349 Berlin
| IM-NETZ Internet Services, Berlin............. http://www.IM-NETZ.de
| Telekom ...................... ++49 30 4511000 (Q) und 0177 451 2000

Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive