Endung hinzufügen

Zuerst schreibst du mal oben in dein Script
PHP:
error_reporting(E_ALL);

Danach prüfst du ob Fehlermeldungen ausgeworfen werden.

Wenn nein, dann machst halt mal Kontrollausgaben. Zuerst in der Whileschleife sowas wie
PHP:
echo "Hallo ich bin in der While-Schleife<br />";

Wenn da ne Meldung erscheint, weisst du, dass er zumindest das Directory öffnen und files auslesen konnte.

Danach systematisch in jede If-Abfrage Kontrollausgaben ausbauen, um herauszufinden wo der Weg des Scriptes langführt.

Du hast vorher der Funktion vergessen das Directory (das du via $ordner mitgegeben hast) zu öffnen. Das hättest du über
PHP:
$d = opendir($ordner);
machen müssen. Ich habe dir jetzt einfach ein paar Variablen noch umbenannt, damit du besser lesen kannst. Im Grunde ist es Sven's Script, einfach noch in eine Funktion verpackt.
 
Ok ich versuchs danke mal fürs erste...

Tut mir leid war nicht so gemeint mit "mein" Script, eher so, meine Version des Scriptes....
sorry
greets green
 
Tut mir leid war nicht so gemeint mit "mein" Script, eher so, meine Version des Scriptes....
*lach* das war auch nicht so gemeint. Als ich von Sven's Script sprach wollte ich dich nicht auf eine Junior-Urheberrechtsverletzung aufmerksam machen, sondern einfach einfach kurz eine Art Miniprotokoll der Änderungen angeben.

Sven's Script, von dir verpackt in eine Funktion und von mir für die Funktion angepasst. Ok so? :)
 
@ green_phanta

wenn du ein script prüfen willst, dann solltest du innerhalb des scriptes immer wieder die variablen prüfen:

PHP:
<?php 
    benennen('/img/'); 
    benennen('/img1/'); 
    benennen('/img2/'); 
    benennen('/img3/'); 
    function benennen($directory) { 
    echo 'FUNKTION_benennen $directory: '.$directory.'<br>';

    $handler = opendir ($directory);
    echo 'FUNKTION_benennen $handler: '.$handler.'<br>';
    while (false !== ($file = readdir ($handler))) { 
        if(is_file($directory.$file) && preg_match('#.+\.(gif|png|jpe?g)$#i',$file))    { 
            if(!preg_match('#_icon\.(gif|png|jpe?g)$#i',$f)) { 
                $name = preg_replace('#^(.+)\.(gif|png|jpe?g)$#i','\\1_icon.\\2',$file);
  echo 'FUNKTION_benennen in whileSchleife $file: '.$file.'<br>';
  echo 'FUNKTION_benennen in whileSchleife $name: '.$name.'<br>';
                if(rename($directory.$file,$directory.$name))    { 
                    echo '<hr><strong>Umbenannt:</strong>'.$file.'-&gt;'.$name; 
                }else{ 
                    echo '<hr><strong>Fehler:</strong>'.$file; 
                } 
            } 
        } 
    } 
    closedir($handler);  
} 
?>

so kannst du deinen CODE besser kontrollieren.
 
Hi

Also das wir ausgegeben:

PHP:
FUNKTION_benennen $directory: /img1/
FUNKTION_benennen $handler:
FUNKTION_benennen $directory: /img2/
FUNKTION_benennen $handler:
FUNKTION_benennen $directory: /img3/
FUNKTION_benennen $handler:

Ich schliese daraus:
$directory funktioniert, aber $handler nicht. Aber ich weiß nicht warum er das nicht kapiert?
das heißt diese Zeile
PHP:
$handler = opendir($directory);
müsste falsch sein, oder?
Aber die ist in meinen Augen völlig richtig?
Was is da los?

greets green
 
Zurück