• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Bild mit eigenem Löschbutton

T4k3C4r3

Mitglied
Guten Abend.

Ich sitze schon wieder vor einem neuen Problem.

Ich habe eine Bildergalerie (OHNE MYSQL DATENBANK!) erstellt. Jedes der Bilder hat einen Löschbutton
neben sich.

Ich habe aber leider keine Ahnung , wie ich dem button "sage" ,dass er genau das Bild neben sich löschen soll.

Und nach einigen erfolglosen Suchen in Google habe ich sofort an euch gedacht.

Hat jemand eine Idee ?

Mfg
 
Wenn Du die Bilder nicht aus einer Datenbank lädst, woher kommen die Daten zu den Bildern denn dann? Das wäre entscheidend um dir eine passende Antwort geben zu können.
 
Also das ganze soll so funktionieren: (Bisher funktionier alles aus das Löschen und Freigeben von bestimmten Bildern.)

User können mit Hilfe eines Uploadscriptes Bilder Hochladen, diese kommen dann in einen Ordner, wo Sie sozusagen darauf warten,
dass der Admin sie frei gibt, wenn das passiert, dann kommt das Bild in einen anderen Ordner wo ein Script alle Bilder anzeigt.

Und wenn das Bild irgentwie unangemessen ist oder nicht zum Thema passt, dann hat ein Admin noch vor der Freigabe die Möglichkeit das Bild zu löschen.
 
Du musst natürlich die konkrete Datei und nicht das Verzeichnis löschen. Wie sieht denn dein Quellcode dazu aus? *aus der Nase zieh*
 
Sry ich wollte nicht aufdringlich sein wie *macht mir das* :)

Aber hier der Quell Code:
PHP:
echo"<a href='#uploadaphoto' rel='prettyPhoto[inline]'><span style='color:#A600A6' >Link</span></a>
    <div id='uploadaphoto' style='display:none;'>
    <p>
    <br />
   
echo '<div id="preview">';
$break = 1;
$x = 1;
$bilder = glob( "galerien/picwaitingaccept/thumbs/*.*" );
natsort( $bilder );
foreach ($bilder as $bild)
{
        $array = explode( "/", $bild );
    
        $bild = array_pop($array);
        echo '<a href="galerien/picwaitingaccept/images/' .urlencode( $bild ). '" 
        rel="lightbox[demoscript]" 
        title="&lt;a href=\'download.php?get=galerien/picwaitingaccept/images/' .urlencode( $bild ). '\'&gt;Bild herunterladen&lt;/a&gt;" 
        class="thumb">
        <img src="galerien/picwaitingaccept/thumbs/' .$bild. '" /></a>
        
        <form action="index.php?page=admincp#prettyPhoto[inline]/0/" method="POST">
        <input name="image_accept" type="submit" value="Speichern" class="button" />
        <input name="image_deny" type="submit" value="L&ouml;schen" class="button" />
        </form>
        ';
        if(isset($_POST['image_accept']))
        {
            copy("galerien/picwaitingaccept/images/". $bild ."" , "galerien/{$category}/images/". $bild ."");
            if (file_exists("galerien/{$category}/images/". $bild ."")) 
            {
                unlink("galerien/picwaitingaccept/images/". $bild ."");
            }
            echo "<span style='color:#008000' >Das Foto ist nun in der Galerie zu sehen.</span>";
        }
        elseif(isset($_POST['image_deny']))
        {
            //unlink("galerien/picwaitingaccept/thumbs/' .$bild. '.*"); Löscht alle Bilder
            //unlink("galerien/picwaitingaccept/images/' .$bild. '.*");Löscht alle Bilder
            foreach($_POST['image_deny'] as $bild)
            {
                if(file_exists($bild) && is_readable($bild) && unlink($bild))
                {
                    echo $bild . ' wurde erfolgreich gelöscht.<br />';
                }
            }
        }
        else
        {
        }
        echo"<br /><br />";
        
        echo ($break % 6 == 0) ? "<br /><br />\n" : "";
    $break++;
    $x++;
}


echo '</div>';


    
echo"<br /><br /><br />
    </p></div>
    <br /><br /><br />
    ";
 
Zuletzt bearbeitet:
Ganz oben in dem PHP-Code stimmt etwas nicht.

PHP:
echo"<a href='#uploadaphoto' rel='prettyPhoto[inline]'><span style='color:#A600A6' >Link</span></a>
    <div id='uploadaphoto' style='display:none;'>
    <p>
    <br />
   
echo '<div id="preview">';

Da fehlt ein "; hinter <br />.

In dem Formular hast Du vergessen das zu löschende Bild zu nennen. Daher wird nach Klick auf "Löschen" die Seite neu geladen und alle Bilder einzeln gelöscht.

Du musst also in dem Formular ein input-hidden-Feld hinterlegen in dem Du den Dateinamen des Bildes unterbringst. Im PHP-Code müsstest Du dann folgendes ändern:

PHP:
if(isset($_POST['image_accept']) && $_POST["filename"] == $bild)

PHP:
elseif(isset($_POST['image_deny']) && $_POST["filename"] == $bild)

wobei ich bei diesem Code davon ausgehen, dass du dem input-hidden-Feld den Namen "filename" gibst und darin $bild als value mitgibst.
 
Ganz oben in dem PHP-Code stimmt etwas nicht.

PHP:
echo"<a href='#uploadaphoto' rel='prettyPhoto[inline]'><span style='color:#A600A6' >Link</span></a>
    <div id='uploadaphoto' style='display:none;'>
    <p>
    <br />
   
echo '<div id="preview">';

Da fehlt ein "; hinter <br />.

Uhh da habe Ich ein Kommentar weggelöscht nach dem Einfügen und da ist das mitgegeangen. (Sollte mir nicht mehr passieren :) )


Und ja VIELEN DANK!! DIE ACTION WIRD NUR NOCH BEI DEM BILD DURCHGEFÜHRT, WO DER BUTTON IST DANKE!!
 
Zurück
Oben