Hallo an alle,
hab mal 2 kleine problemchen die das arbeiten mit datei handling auf dem ftp server zusammen hängen
das erste ist,
ich habe vor einem monat in mein upload script ein fehler eingebaut,
bei hochladen wurden die erweiterungen nicht mit an die files gehängt
wie kann ich z.b. mit nem php script evtl alle bild datein die keine erweiterung bekommen das jpg ans ende ran hängen,
( die bild datein wurden alle mit ner fortlaufenden ID die aus ner SQL tabelle gezogen wurde gespeichert,)
sieht wie folgt aus
1234.
3124.
23.
435.
123.
uswm es steht immer nur der . dort, aber nicht die erweiterung, das sind nun leider etliche hundertevon files und per hand wollt ich das nicht unbedingt machen.
evtl läst sich sowas ja auch via ftp programm oder ähnliches lösen.
---------------------------- 2ter punkt-------------------
das ist ein php code der in meinem script mit drinne steht,
dieser ermittelt bild leichen die auf de ftp server stehen, aber nicht mehr in der datenbank zu finden sind,
da ich hier aber auch etliche hunderte von bildleichen habe (hab das schonmal anhand der SQL zahlen und der ftp client daten des ordners errechnet) möchte ich diese auch gerne ermitteln und löschen,
aber dieses script arbeitet ziemlich umständliche und mein server arbeitet nie weiter, sprich. da es wohl zuviel daten zum verarbeiten sind, macht er nicht weite,r
führe ich dieses script local auf meinem xampp aus, (AMD Athlon XP 2000+ 1GB DDR-RAM) hängt der sich selbst auf bzw arbeitet sehr sehr stockend)
gibt s hierfür irgendwie ne andre möglichkeit die nicht so das system beansprucht aber trotzdem alle bildleichen löscht?
was direkte datei dinge angeht in php bin ich nicht so der experte, mein gebiet geht eher auf umfangreiche mysql abfragen etc.
ich danke für eure hilfe
hab mal 2 kleine problemchen die das arbeiten mit datei handling auf dem ftp server zusammen hängen
das erste ist,
ich habe vor einem monat in mein upload script ein fehler eingebaut,
bei hochladen wurden die erweiterungen nicht mit an die files gehängt
wie kann ich z.b. mit nem php script evtl alle bild datein die keine erweiterung bekommen das jpg ans ende ran hängen,
( die bild datein wurden alle mit ner fortlaufenden ID die aus ner SQL tabelle gezogen wurde gespeichert,)
sieht wie folgt aus
1234.
3124.
23.
435.
123.
uswm es steht immer nur der . dort, aber nicht die erweiterung, das sind nun leider etliche hundertevon files und per hand wollt ich das nicht unbedingt machen.
evtl läst sich sowas ja auch via ftp programm oder ähnliches lösen.
---------------------------- 2ter punkt-------------------
PHP-Code:
//Bildleichen löschen
if(isset ($action) && $action =='deleteold'){
$ordner = "../upload/thumbs";
$befehl = opendir("$ordner");
$i=0;
while ($datei=readdir($befehl)) {
if (file_exists($ordner."/".$datei)){
$thispic= $datei;
$res_pics=mysql_query("SELECT * FROM niv_images WHERE p_minipic='upload/thumbs/$thispic'") or error (mysql_error());
$piccount=mysql_num_rows($res_pics);
if($piccount == 0){
unlink("../upload/thumbs/$thispic");
}
}
$i++;
}
closedir($befehl);
$ordner2 = "../upload";
$befehl2 = opendir("$ordner2");
$j=0;
while ($datei2=readdir($befehl2)){
if (file_exists($ordner2."/".$datei2)) {
$thispic2= $datei2;
$res_pics2=mysql_query("SELECT * FROM niv_images WHERE p_minipic='upload/thumbs/$thispic2'") or error (mysql_error());
$piccount2=mysql_num_rows($res_pics2);
if($piccount2 == 0) {
unlink("../upload/$thispic2");
$thispic2 = explode(".",$thispic);
$pmg=$thispic2[0];
$scom=mysql_query("SELECT c_id FROM niv_comments WHERE c_forpicid =$pmg") or error (mysql_error());
while($com=mysql_fetch_array($scom)){
mysql_query("DELETE FROM niv_comments WHERE c_id='$com[c_id]") or error (mysql_error());
}
}
}
$j++;
}
closedir($befehl2);
dieser ermittelt bild leichen die auf de ftp server stehen, aber nicht mehr in der datenbank zu finden sind,
da ich hier aber auch etliche hunderte von bildleichen habe (hab das schonmal anhand der SQL zahlen und der ftp client daten des ordners errechnet) möchte ich diese auch gerne ermitteln und löschen,
aber dieses script arbeitet ziemlich umständliche und mein server arbeitet nie weiter, sprich. da es wohl zuviel daten zum verarbeiten sind, macht er nicht weite,r
führe ich dieses script local auf meinem xampp aus, (AMD Athlon XP 2000+ 1GB DDR-RAM) hängt der sich selbst auf bzw arbeitet sehr sehr stockend)
gibt s hierfür irgendwie ne andre möglichkeit die nicht so das system beansprucht aber trotzdem alle bildleichen löscht?
was direkte datei dinge angeht in php bin ich nicht so der experte, mein gebiet geht eher auf umfangreiche mysql abfragen etc.
ich danke für eure hilfe
![Smilie](https://www.php-resource.de/forum/core/images/smilies/smile.gif)
Kommentar