SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 21.07.2009, 12:28:19
Auf der Mauer Auf der Mauer ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 42
Beiträge: 119
Bilder aus Ordner löschen + passenden Datensatz (MySql)

Hallo Experts,

ich kann bei meinem Uploadscript momentan das zuletzt hochgeladene Bild löschen.
Das bedeutet wenn ich auf den Link klicke wird sowohl das große Originalbild als auch
das kleine erstellte Vorschaubild gelöscht. Während des Uploads wurden aber auch noch Daten in eine MySql Tabelle geschrieben.

Der neue Dateiname setzt sich aus einer SessionID zusammen.

Während des Uploads wird zum Beispiel diese SessionID bei "Nummer" eingetragen.
Ein timestamp wird gesetzt welcher anzeigt wann das Bild hochgeladen wurde. Der Originaldateiname sowie die Dateigröße wird in die MySQL Datenbank geschrieben. Als letztes kommen noch die Links zu den Bidern in die Datenbank.

Funktioniert alles sehr gut, allerdings möchte ich beim Löschen der Bilder natürlich auch den dazugehörigen Datensatz aus der Tabelle loswerden.


Normalerweise würde ich ja soetwas in der Art machen.


PHP-Code:
$loeschen "DELETE * FROM Table WHERE Nummer LIKE '$_SESSION['random_key']'";
$loeschen mysql_query($loeschen); 
Mein jetziger Link zum löschen der Bilder sieht aber so aus und hier müßten ja dann beim anklicken zwei Dinge gleichzeitig passieren.

PHP-Code:
echo "<p><a href=\"".$_SERVER["PHP_SELF"]."?a=delete&t=".$_SESSION['random_key']."\"><p style='font-size:10px;font-family:verdana'><img src='demo11.gif' width='9' height='9' border='0'> <b>Dieses Bild löschen</b></a><br>"
Kann mir bitte jemand dabei helfen?

Gruß
René
Mit Zitat antworten
  #2  
Alt 21.07.2009, 20:09:33
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Wieso gleichzeitig?

Nacheinander! An der Stelle in Deiner Datei $_SERVER["PHP_SELF"] (sollte so nicht verwendet werde!) wo Du die Dateien löscht, packst Du auch noch das SQL-Statment mit dazu und fertig - noch Fragen?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3  
Alt 22.07.2009, 00:16:36
Auf der Mauer Auf der Mauer ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 42
Beiträge: 119
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Hallo vt1816,

vielen Dank für die Antwort. Meinst du es so in der Art?

PHP-Code:
echo "<p><a href=\"".$_SERVER["PHP_SELF"]."?a=delete&t=".$_SESSION['random_key'].$loeschen "DELETE * FROM Table WHERE Nummer LIKE '.$_SESSION['random_key'].'"$loeschen mysql_query($loeschen)"\"><p style='font-size:10px;font-family:verdana'><img src='demo11.gif' width='9' height='9' border='0'> <b>Dieses Bild löschen</b></a><br>"
Gruß
René
Mit Zitat antworten
  #4  
Alt 22.07.2009, 09:25:29
Benutzerbild von Indyk
Indyk Indyk ist offline
Member
 
Registriert seit: Aug 2006
Ort: Lübeck
Alter: 37
Beiträge: 900
Indyk eine Nachricht über ICQ schicken
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Hallo Auf der Mauer,

nein so meinte es vt816 sicherlich nicht.

Er wollte dir nur verdeutlichen das jenes welches du unter "gleichzeitig" verstehst, nicht gleichzeitig passiert sondern in einem rutsch.

Du löscht erst die Datei (das bekommst du ja laut deiner Aussage schon hin?) und dann löschst du den Eintrag in der Datenbank (erst a dann b) und wenn beides geklappt hat, war der löschvorgang erfolgreich.
Mit Zitat antworten
  #5  
Alt 22.07.2009, 09:46:48
Auf der Mauer Auf der Mauer ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 42
Beiträge: 119
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Hallo Indyk,

entschuldigt bitte wenn ich etwas schwer von Begriff bin, aber wie wird die MySQL Löschaufforderung ausgelöst? (Über den Link)

Dann ist aber der von mir oben gepostete Code doch richtig, oder?

PHP-Code:
$loeschen "DELETE * FROM Table WHERE Nummer LIKE '$_SESSION['random_key']'";
$loeschen mysql_query($loeschen); 
Was ist denn davon zuhalten? Hatte gerade eine Idee.

PHP-Code:
if(echo "<p><a href=\"".$_SERVER["PHP_SELF"]."?a=delete&t=".$_SESSION['random_key']."\"><p style='font-size:10px;font-family:verdana'><img src='demo11.gif' width='9' height='9' border='0'> <b>Dieses Bild löschen</b></a><br>";  )
    {
    
$loeschen "DELETE * FROM Table WHERE Nummer LIKE '$_SESSION['random_key']'";
$loeschen mysql_query($loeschen);  
    } 
Durch if wird geprüft ob der Link geklickt wurde, nur dann wird die MySQL Anweisung ausgelöst.

Gruß
René

Geändert von Auf der Mauer (22.07.2009 um 09:55:29 Uhr)
Mit Zitat antworten
  #6  
Alt 22.07.2009, 09:58:51
Crisps Crisps ist offline
Junior Member
 
Registriert seit: Oct 2008
Alter: 47
Beiträge: 274
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Das hier:

Code:
DELETE * FROM Table...
Ist schon mal komplett falsch - Der richtige Delete-Syntax sieht so aus:

Code:
DELETE FROM Table...
Mit Zitat antworten
  #7  
Alt 22.07.2009, 10:04:18
Benutzerbild von Indyk
Indyk Indyk ist offline
Member
 
Registriert seit: Aug 2006
Ort: Lübeck
Alter: 37
Beiträge: 900
Indyk eine Nachricht über ICQ schicken
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Hallo Auf der Mauer,

du bist nicht schwer von begriff (zumindest habe ich das nicht behauptet) dir fehlen einfach die grundlagen um dein Problem selbst zu lösen, und vor allem fehlen sie dir um die hilfe die dir geboten wird zu verstehen. (Hast du ja jetzt selbst gemerkt)

Wie du auf Links reagierst bzw. $_GET / $_REQUEST Parameter, solltest du im PHP Bereich in erfahrung bringen.

Was die richtige DELETE Syntax angeht hat dir Crisps ja schon einen guten Hinweis geben können.
Mit Zitat antworten
  #8  
Alt 22.07.2009, 12:01:01
Auf der Mauer Auf der Mauer ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 42
Beiträge: 119
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Zitat:
Zitat von Crisps Beitrag anzeigen
Das hier:

Code:
DELETE * FROM Table...
Ist schon mal komplett falsch - Der richtige Delete-Syntax sieht so aus:
Na wie kann es denn komplett falsch sein wenn es doch funktioniert?
Mit * wird ja nicht der gesamte Inhalt gelöscht sondern nur die komplette Zeile (Eintrag) in der die Session ID steht.

Code:
WHERE Nummer LIKE '$_SESSION['random_key']'
Na dann schaue ich mir mal die $_GET / $_REQUEST Parameter Geschichte an.

Vielen Dank für die Hilfe!

Gruß
René
Mit Zitat antworten
  #9  
Alt 22.07.2009, 12:06:01
Benutzerbild von Indyk
Indyk Indyk ist offline
Member
 
Registriert seit: Aug 2006
Ort: Lübeck
Alter: 37
Beiträge: 900
Indyk eine Nachricht über ICQ schicken
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Zitat:
Zitat von Auf der Mauer Beitrag anzeigen
Na wie kann es denn komplett falsch sein wenn es doch funktioniert?
Was bedeutet bei dir funktioniert? Ich bekomme nämlich, wie alle anderen wohl auch?, einen Syntaxfehler wenn ich es mit * probiere. Lässt du dir mysql fehler überhaupt ausgeben?
Hast du schon einmal dein Statement direkt per phpMyAdmin (oder ähnliches) versucht abzusenden?
Mit Zitat antworten
  #10  
Alt 22.07.2009, 12:23:00
Auf der Mauer Auf der Mauer ist offline
Anfänger
 
Registriert seit: Jun 2009
Alter: 42
Beiträge: 119
AW: Bilder aus Ordner löschen + passenden Datensatz (MySql)

Vollkommen Richtig, ich muss mich entschuldigen. In meiner bisherigen delete.php steht weit und breit nichts von *.

Dann lassen wir es doch am besten jetzt auch einfach weg ;-)


Ich habe jetzt gelesen das die GET Variante nicht sicher ist da der Link manipuliert werden kann.

Könnte ich nicht die Löschroutine komplett in eine delete.php auslagern? Der Link löst actionscript aus, wodurch die delete.php geladen wird. Vorher muss ich noch die Session ID an die delete.php senden ($_POST). Am Ende der delete.php kommt noch eine Weiterleitung zum uploadscript.

Gruß
René

Geändert von Auf der Mauer (22.07.2009 um 12:35:53 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dateien und Ordner löschen nites PHP Grundlagen 4 25.10.2006 21:10:45
Bilder und Ordner auslesen rabbi PHP Grundlagen 2 09.09.2005 08:58:55
Bilder Upload für user in eigenen Ordner wallis PHP Grundlagen 19 08.07.2005 15:38:03
ordner die nicht mehr gebraucht werden löschen shox PHP Grundlagen 2 02.04.2005 18:42:58
MYSQL Datensatz verschieben und löschen Schnoop PHP für Fortgeschrittene und Experten 6 21.01.2004 17:50:42


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:41:15 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt