automatische Löschfunktion

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Alles befolgt was du geschrieben hast dennoch keine Fehlermeldungen
    ich leg hier mal den kompletten Code

    PHP-Code:
    <?php
    error_reporting
    (-1);
    ini_set('display_errors'true);
    include(
    "system.php");

    $db = new PDO('mysql:host='$servername .';dbname='$datenbank$username$passwort, [PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"]);
    if(!
    $db)
    {
        echo 
    'Datenbankverbindungsfehler.';
        exit();
    }
    $sql $db->prepare("DELETE FROM jobdirectory WHERE datum <​ DATE_SUB(now(), INTERVAL 14 DAY)");
    echo 
    "\nPDO::errorCode(): "$sql->errorCode();

    include(
    "header.php");
    ?>
    <!DOCTYPE html>
    <html lang="de">
    <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <?php include('meta.php');?>
    <title><?php echo $homepagetitel?> | Startseite</title>
    <!-- Bootstrap core CSS -->
    <link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
    <!-- Custom styles for this template -->
    <link href="css/heroic-features.css" rel="stylesheet">
    </head>
    <body>

     <?php include('navi.php');?>

      <!-- Page Content -->
     <br> <div class="container">
    <form name="search" method="post" action="searchdata.php">
        <!-- Jumbotron Header -->
           <div class="card my-4">
              <h5 class="card-header">Jobsuche</h5>
              <div class="card-body">
                <div class="input-group">
                  <input type="text" class="form-control" name="searchdata" placeholder="suche nach Beruf oder Ort" required="true">
                  <span class="input-group-btn">
                    <button class="btn btn-secondary" type="submit">suchen</button>
                  </span>
                </div>
              </div>
            </div>
    </form>




        <!-- Page Features -->

        <div class="row text-left">
    <?php
    //Blätterfunktion-start
    // Anzeige der Datensätze pro Seite
    $DatensaetzeSeite 99;

    // Anzahl der Datensätze ermitteln
    $AnzahlDatensaetze $db->query("SELECT COUNT(*) FROM jobdirectory")->fetchColumn(0);

    // Die Anzahl der Seiten ermitteln
    $AnzahlSeiten ceil($AnzahlDatensaetze $DatensaetzeSeite);

     
    // Die aktuelle Seite ermitteln
    $AktuelleSeite = isset($_GET["seite"]) ? $_GET["seite"] : 1;

    // Den Wert überprüfen und ggf. ändern
    $AktuelleSeite ctype_digit($AktuelleSeite) ? $AktuelleSeite 1;
    $AktuelleSeite $AktuelleSeite || $AktuelleSeite $AnzahlSeiten $AktuelleSeite;

    // Den Versatz ermitteln
    $Versatz $AktuelleSeite $DatensaetzeSeite $DatensaetzeSeite;

    //Blätterfunktion - ende
    $abfrage $db->query('SELECT * FROM jobdirectory where Status=1 ORDER BY id DESC LIMIT '.$Versatz.', '.$DatensaetzeSeite.'');
    while(
    $row $abfrage->fetch(PDO::FETCH_ASSOC))
    {
       
    $ID $row['ID'];
       
    $Titel $row['Titel'];
       
    $Beschreibung $row['Beschreibung'];
       
    $datum $row['datum'];
    ?>

    <div class="col-lg-4 col-md-6 mb-4">
            <div class="card h-100">
              <div class="card-body">
                <h4 class="card-title" align="center"><a href="job-details.php?nid=<?PHP echo "".$ID."";?>" title="<?PHP echo "".$Beschreibung."";?>"><?PHP echo "".$Titel."";?></a></h4>
              </div>
            </div>

          </div>
        <?php ?>



        </div>
        <!-- /.row -->
    <?php
     
    // Formular.- und Blätterfunktion
     
    echo '<form method="GET" autocomplete="off">' .
      ((
    $AktuelleSeite 1) > ?
      
    '<a href="?seite=' . ($AktuelleSeite 1) . '">◄</a>' :
      
    ' ◄') .
     
    ' Seite ' $AktuelleSeite ' von ' $AnzahlSeiten '' .
      ((
    $AktuelleSeite 1) <= $AnzahlSeiten ?
       
    ' <a href="?seite=' . ($AktuelleSeite 1) . '">►</a>' :
       
    ' ►') .
     
    '</form>';
    ?>
      </div>
      <!-- /.container -->

      <!-- Footer -->
      <?php include('footer.php');?>

      <!-- Bootstrap core JavaScript -->
      <script src="vendor/jquery/jquery.min.js"></script>
      <script src="vendor/bootstrap/js/bootstrap.bundle.min.js"></script>

    </body>

    </html>​
    Der Löschcode steht absichtlich oben da bei jedem Aufruf der Seite gleich alle Einträge die älter sind als 2 Wochen gelöscht werden sollen. So war es angedacht. Bis auf die Löschfunktion klappt alles.

    Kommentar


    • #17
      Tipp:
      Lesen: https://www.php.net/manual/en/pdo.prepare und Beispiele dort beachten.

      Und noch ein Hinweis: https://net.co.at/doc/howto/docs/dcl...ql-select.html
      Zuletzt geändert von scatello; 14.01.2023, 21:41.

      Kommentar


      • #18
        gelöst

        PHP-Code:
        $sql "DELETE FROM jobdirectory WHERE datum < DATE_SUB(now(), INTERVAL 30 DAY)";
        if (
        $con->query($sql) === TRUE) {
          echo 
        "alle Daten die 30 Tage online waren wurden entfernt";
        } else {
          echo 
        "Error deleting record: " $con->error;
        }
        ​ 

        Kommentar


        • #19
          1. Open your Google Account and tap/click on 'Manage your Google Account'
          2. Select 'Manage your data & personalization' from the Privacy & personalization box.
          3. From the Activity controls box, select Web & App Activity.
          Zuletzt geändert von Bernie; 24.04.2023, 09:06.

          Kommentar


          • #20
            Zitat von phppower Beitrag anzeigen
            gelöst

            PHP-Code:
            $sql "DELETE FROM jobdirectory WHERE datum < DATE_SUB(now(), INTERVAL 30 DAY)";
            if (
            $con->query($sql) === TRUE) {
            echo 
            "alle Daten die 30 Tage online waren wurden entfernt";
            } else {
            echo 
            "Error deleting record: " $con->error;
            }
            ​ 
            i agree, I found this code to work

            Kommentar

            Lädt...
            X