php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.09.2010, 10:48  
Neuer Benutzer
 
Registriert seit: 09.09.2010
Beiträge: 17
PHP-Kenntnisse:
Anfänger
DJMaster befindet sich auf einem aufstrebenden Ast
Standard PHP While-Schleifen-Problem

Hallo,

ich bins mal wieder.
das eine Problem wurde gestern super schnell gelöst. Heute habe ich das nächste. Mit eine While-Schleife.

Hab mir folgenden Code gebastelt.
Er liest ein Verzeichnis aus, kürzt die Dateinamen und stellt diese in einem DropDown-Menü zur Verfügung.
PHP-Code:
<?php

$i 
0
while(
$datei readdir($verzeichnis))

  { 
//Die Datein werden zeile für zeile  in die variable $datei geschrieben 
  
  //$datei = rename ($dateiorg, substr($dateiorg,-61,19));
  //echo $datei;
  

  
if(substr($datei,-4)=='.wav' || substr($datei,-4)=='.dss')
  { 
        
  if (!
is_dir($datei))
    {                 
//Verzeichnisse sollen ja nicht dargestellt werden 
    
$daten[$i] = "$datei";
        
$i++;
    
$filename "$verz$datei";


    if (
file_exists($filename)) {
        
//preg_match('Import-dss1@[a-zA-Z0-9_-]i{7}',$filename,$match);
        //$new_filename = $match[0] . end(explode(".", $filename));
        
chmod($filename0777);
        
$new_filename substr($filename,-12);
        
rename($filename$verz $new_filename);
    }
    
    echo 
"<option value=?cd=$ordner&data1=$new_filename>$new_filename</option>";
        
    
//echo "<option value=?cd=$ordner&data1="; echo substr($datei,-61); echo ">"; echo substr($datei,-61); echo"</option>";
    


  } 
  }
echo 
"</select>";

?>
Ich möchte jetzt dass bei dieser Schleife ein weiterer Befehl ausgeführt wird.
für jede Datei einzeln.

Der Befehl steht in der zip.php, wird dann also über Include eingefügt.
Nur wo einfügen, dass für jede Datei der Befehl extra ausgeführt wird.
Ich habe es nur geschafft, dass alles aus dem Verzeichnis immer verarbeitet wird, aber nicht jede Datei einzeln.

Hoffe auf eure Hilfe.

Danke.
DJMaster ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 10.09.2010, 11:49  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.563
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

der Befehl muss in den innersten Teil deiner While-schleife - da wo chmod (0777) gemacht wird und die Datei umbenannt wird ...
eagle275 ist offline  
Alt 10.09.2010, 12:14  
Neuer Benutzer
 
Registriert seit: 09.09.2010
Beiträge: 17
PHP-Kenntnisse:
Anfänger
DJMaster befindet sich auf einem aufstrebenden Ast
Standard

danke für die Antwort.
leider hab ich das auch schon überall ausprobiert, auch dort in den innersten Teil der While-Schleife.

Er erstellt zunächst immer ein komplettes Zip-Archiv.
Erst nach auswahl der Datei legt der das passende Zip-Archiv an.

Weitere Ideen? Kann doch nicht sein, dass das nciht zu lösen ist. Kostet mich alle smehr Zeit und Nerven als das komplette Projekt

Danke im Voraus schon mal....
DJMaster ist offline  
Alt 10.09.2010, 12:31  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.563
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

wie ? komplettes Archiv - dann gib ihm doch die richtigen Parameter mit ...

ich glaub mir dämmert langsam, was du eigentlich willst ...

du musst die Datei packen, wo du das Formular verarbeitest ..

also dessen Post-Daten ...
eagle275 ist offline  
Alt 10.09.2010, 13:12  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

Ist das, wa in zip.php steht so geheim, dass du nicht darüber reden darfst?
__________________
Warum denkt mein Hund eigentlich immer dann, wenn es an der Tür klingelt, es sei für ihn?
Wolla ist offline  
Alt 10.09.2010, 13:24  
Neuer Benutzer
 
Registriert seit: 09.09.2010
Beiträge: 17
PHP-Kenntnisse:
Anfänger
DJMaster befindet sich auf einem aufstrebenden Ast
Standard

so jetzt bin ich einen Schritt weiter.
Hier mein Code:
PHP-Code:
<?php
error_reporting
(E_ALL);
$i 0
while(
$datei readdir($verzeichnis))

  { 
//Die Datein werden zeile für zeile  in die variable $datei geschrieben 
  
  //$datei = rename ($dateiorg, substr($dateiorg,-61,19));
  //echo $datei;
  
  
if(substr($datei,-4)=='.wav' || substr($datei,-4)=='.dss')
  { 
            
  if (!
is_dir($datei))
    {                 
//Verzeichnisse sollen ja nicht dargestellt werden 
    
$daten[$i] = "$datei";
    
    
$filename "$verz$datei";
    if (
$ordner == TRUE)
        {
        include (
"zip.php");
        
$i++;
        }

    if (
file_exists($filename)) 
        {
        
//preg_match('Import-dss1@[a-zA-Z0-9_-]i{7}',$filename,$match);
        //$new_filename = $match[0] . end(explode(".", $filename));
        
chmod($filename0777);
        
$new_filename substr($filename,-12);
        
rename($filename$verz $new_filename);
        }

    echo 
"<option value=?cd=$ordner&data1=$new_filename>$new_filename</option>";
        
    
//echo "<option value=?cd=$ordner&data1="; echo substr($datei,-61); echo ">"; echo substr($datei,-61); echo"</option>";
    
    
    
}
        
    

  } 

  }
echo 
"</select>";

?>
beim Aufruf der Seite packt er jetzt die erste Datei im Verzeichnis (mit Orginal-Namen, so soll es sein). macht dies aber nicht weiter. erst beim erneuten Laden der Seite macht der die nächste Date und packt diese.
Aber ein Reload kann ja nciht die Lösung sein.

Wo hängt denn der Fehler? ich find ihn nicht?
ich mit $i++ schon handtiert, aber ohne Erfolg (vllt auch falsch )

Zähl auf euch.
Danke....
DJMaster ist offline  
Alt 10.09.2010, 13:34  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.563
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

also langsam musst du lernen, dich zu entscheiden ..

entweder willst du ALLE Dateien packen - oder nur 1 einzelne Datei ...

offensichtlich nun doch das erstere - dafür hatten wir den Code doch schon ...

schreib ihn nach deine rename-funktion im innersten - alles was du brauchst sind die richtigen Parameter, damit du für jede Quelldatei eine Zip-Datei bekommst ...
eagle275 ist offline  
Alt 10.09.2010, 13:45  
Neuer Benutzer
 
Registriert seit: 09.09.2010
Beiträge: 17
PHP-Kenntnisse:
Anfänger
DJMaster befindet sich auf einem aufstrebenden Ast
Standard

also das will ich schon von Anfang an.
Jede Datei in eine Zip-Datei packen.

Hab das auch schon ausprobiert nach dem rename, aber dann packt er auch nur die erste Datei. die 2. Datei wird nur umbenannt, aber nicht gezippt.

Am besten wäre es, wenn das Zippen vor dem Umbenennen stattfindet, dann bleiben die Original-Datei-Namen in der Zip-Datei erhalten.

Ich verzweifel langsam....
DJMaster ist offline  
Alt 10.09.2010, 13:52  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.563
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

dann bau den Zip-Befehl vors rename ..
und dreh error-reporting hoch,

lass dir Fehlermeldungen der Zip-Bibliothek liefern - nicht unterdrücken mit @ ..
eagle275 ist offline  
Alt 10.09.2010, 15:07  
Neuer Benutzer
 
Registriert seit: 09.09.2010
Beiträge: 17
PHP-Kenntnisse:
Anfänger
DJMaster befindet sich auf einem aufstrebenden Ast
Standard

ok, dass kann ich machen.
Was meinst du mit error-reporting hochdrehen?

Wo soll ich das einfügen und vorallem was?
Danke.
DJMaster ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit function() return while markus88 PHP Tipps 2009 4 05.12.2009 18:26
[Erledigt] Problem mit while laub PHP Tipps 2009 4 26.11.2009 12:28
zwei while schleifen mit unterschiedlichen mysql tabellen mygov PHP Tipps 2009 12 01.01.2009 14:32
Problem bei einer while Schleife Sini PHP Tipps 2008 5 22.11.2008 20:03
For schleifen problem martl666 PHP Tipps 2008 19 23.09.2008 15:57
schleifen problem amsele1986 PHP Tipps 2008 3 21.06.2008 17:45
While schleife mit Datenbank in ein Dropdown Feld (Umlaut Problem) kintaro PHP Tipps 2008 6 28.08.2007 19:11
Problem mit while und insert into PHP Tipps 2005-2 6 15.08.2005 19:29
While Schleifen Problem PHP Tipps 2005 9 22.05.2005 22:35
problem mit while und include notyyy PHP Tipps 2005 1 16.05.2005 17:10
problem mit schleifen PHP Tipps 2005 11 23.04.2005 14:59
While Schleifen PHP Tipps 2005 9 22.04.2005 13:04
while schleifen ($dsatz=mysql_fetch_assoc($abfrage1) stefan-miti PHP Tipps 2004 5 23.09.2004 20:46
[Erledigt] Schleifen Problem :( PHP Tipps 2004 1 27.07.2004 17:26
PHP MySQL Problem mit Hyperlink in einer While Schlaufe PHP Tipps 2004 20 09.07.2004 13:46

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php while readdir schleife hängt sich auf, php while schleife mit html, php while anfang datei, while datei <> \\, php while, anfänger php schleife for befehl, zwei while schleifen in eine php, http://www.php.de/php-einsteiger/71684-php-while-schleifen-problem.html, php while schleife

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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum