Wie Bild gleich mitlöschen?

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

  • Wie Bild gleich mitlöschen?

    Hallo,
    habe einen kleinen Anzeigenmarkt.
    Nun habe ich ein bischen erweitert, mit Bildupload.
    Die Anzeigen kann man manuel mit einen Link löschen,
    ansonsten werden sie automatisch nach Anzeigendauer
    gelöscht, 7 Tage, 14 Tage ...u.s.w., mein Problem ist
    nun die Bilder automatisch mit zu löschen,komm aber
    einfach nicht weiter...
    Alle Bilder werden beim Upload umbenannt, der Name ist
    dann genauso wie die chiffre-Nr., z.b. 123456789.jpg und
    werden im selben Ordner gespeichert wo sich die Scripte
    befinden. Tja, soviel zu meinem Problem(chen).

    Vieleicht hat ja jemand eine Lösung für mich, ich verzweifel noch.


    Gruß Bulli


    Damit lösche ich die Anzeigen:

    <?

    include("config.php");

    $con = mysql_connect("$host","$user","$password")
    or die ("Connection Error to Server");
    $db = mysql_select_db("$db_name",$con)
    or die("Connection Error to Database");




    $del="DELETE FROM anzeigen WHERE kennwort='$kennwort' and chiffre='$chiffre'";



    mysql_query($del);


    echo"<center><br><br>Ihre Aanzeige wurde gelöscht...<br><br>";
    echo "Sie werden gleich weitergeleitet...";
    echo "<meta http-equiv=\"refresh\" content=\"3;URL=index.php\">";

    }
    ?>

  • #2
    wenn ich dich richtig verstanden habe, willst du gleichzeitig mit dem löschen eines artikels, das dazugehörige image lösche?

    zuerst füge deiner tabelle das feld dateiname hinzu, lies es mit select aus und wenn das löschen des artikels erfolgreich war, machst du so was:

    $result = mysql_query("SELECT filename, id FROM trallala");

    while($a=mysql_fetch_array($result)){
    if(mysql_query("delete * from xxx where id = {$a["id"]}"), $conn)
    unlink($a["filename"]);
    }

    so oder so ähnlich müsste das klappen ...

    Kommentar


    • #3
      ...danke für die schnelle Antwort um die Zeit.

      Werde das mal so versuchen, melde mich dann
      wenn's geklappt hat!!!

      Danke und Grüße
      Bulli

      Kommentar


      • #4
        Du sagtest im 1. Beitrag, das Bild wird mit dem Dateinamen chiffrenummer.jpg gespeichert ?
        Es gibt immer nur 1 Bild pro Anzeige?

        Dann mach es so:
        @unlink($chiffre.".jpg");
        [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
        [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
        [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

        © Harald Schmidt

        Kommentar


        • #5
          oder lösch einfach alle Bilder, die länger als 14 Tage auf dem Server sind (im entsprechenden Verzeichnis)

          PHP-Code:
          $dir 'chiffreimages';
          $d diropen($dir);
          while (
          $fn readdir($d))
            if (
          ereg('\.(jpg|jpeg|gif|png)$'$fn) && mtime("$dir/$fn")<(time()-14*86400))
              
          unlink("$dir/$fn");
          dirclose($d); 
          mein Sport: mein Frühstück: meine Arbeit:

          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

          Kommentar


          • #6
            Danke an alle für die Antworten, werde das alles durchtesten
            Ich sitze daran wie ein irrer und es gibt reichlich Möglichkeiten.

            Werde dann hier posten wie ich's am Ende mache, dank eurer Tips...

            Grüße Bulli

            Kommentar


            • #7
              @Troublegum

              ... das diese kleine Zeile mein Problem war, unfaßbar!

              So läuft das jetzt allerbestens.

              Die Anzeigen werden automatisch nach der gewählten Anzeigendauer gelöscht,
              (pruef.php per include in die kategorien.php)

              --------------------
              pruef.php

              <?

              $anzjahr=date("y")*365;
              $anzdauer=date("z");
              $anzverfall=$anzjahr+$anzdauer;

              $del="DELETE FROM anzeigen WHERE verfallen<='$anzverfall'";

              @unlink($chiffre.".jpg");

              mysql_query($del);

              ?>
              --------------------

              ...bei jedem Aufruf der kategorien.php wird geprüft ob Anzeigen zum löschen
              vorhanden sind, und wenn ja werden diese gelöscht.

              Wenn man die Anzeige vorzeitig löschen will mach ich das per Email-Link.

              Aufruf: .../delete.php?kennwort=$kennwort&chiffre=$chiffre

              --------------------
              delete.php

              <?

              include("config.php");

              $con = mysql_connect("$host","$user","$password")
              or die ("Connection Error to Server");
              $db = mysql_select_db("$db_name",$con)
              or die("Connection Error to Database");

              $del="DELETE FROM anzeigen WHERE kennwort='$kennwort' and chiffre='$chiffre'";

              @unlink($chiffre.".jpg");

              mysql_query($del);


              echo"<center><br><br><font size=4>Ihre Aanzeige wurde gelöscht...</font><br>Sie werden gleich weitergeleitet...";
              echo "<meta http-equiv=\"refresh\" content=\"3;URL=index.php\">";

              }
              ?>
              --------------------

              Vieleicht kann das der eine oder andere auch-php-Anfänger mal gebrauchen...

              Danke nochmal... Gruß Bulli

              Kommentar

              Lädt...
              X