 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
10.02.2005, 17:04
|
#1
|
|
TP-Senior
Registriert seit: Mar 2004
|
suche hilfe bei script erstellung
hallo leute,
ich möchte gerne folgendes script erstellen und würde mich freuen wen mir jemand dabei helfen könnte.
das script sollte folgendes können.
in einen ordner name " datein " sollen wiederum die ordner von a - z liegen.
in den ordner a - z sind .txt datein .
es soll eine .php seite geben wo oben die buchstaben von a - z stehen.
klickt man z.b. b an, so wird in den ordner b geschaut und wen da eine .txt
datei liegt ( z.b. mit den namnen = Hausboot ) dan soll unter den buchstaben
a- z der link Hausboot zusehen sein. klickt man diesen wederum an, kommt
der inhalt von der .txt daten Hausboot .
geht so was zu machen und würde mir jemand helfen. bin erlich habe nicht viel ahnung von der php sache.
__________________
cu & gruss....
CRAIX
Wenn mich jemand zwingt, Abstand zu wahren, habe ich den Trost,
dass er ihn gleichfalls wahrt...!!!
|
|
|
10.02.2005, 17:14
|
#2
|
|
TP-Specialist
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
|
prinzipiell ist das zu machen. aber wie dennis gestern sagte braucht jedes verzeichnis platz auf dem server. und das sind min. 26 stueck. dann die ganze sortiererei. und was macht eine datei namens "hausboot" bei "b"? sollte die nicht unter "h" liegen?
was soll also in die ordner sortiert werden? vielleicht gibt es ja noch eine ordnerarme variante.
hardy
|
|
|
10.02.2005, 17:33
|
#3
|
|
TP-Senior
Registriert seit: Mar 2004
|
naja so richtig verstehe ich dich jetzt nett, aber das liegt zu 100% daran das ich nett die ahnung habe. ich weiss ja nicht wie man das lösen kann. dass war nur ein vorschlag, b.z.w. eine vorstellung von mir.
natürlich gehört hausboot zu den ordner h :-) sorry.
naja ich wollte in die ordner von a - z nur .txt datei ablegen. wobei die namen
der .txt datei gleichzeitig die links werden auf der .php seite.
weiss auch nett wie man das lösen könnte, oder gibt es schon irgend wo so ein
fertiges lyric script. das könnte ich mir ja dan anpassen so weit ich es kann.
oder geht das auch so, nur einen ordner und in den sind alle .txt datein drin und wen man z.b. auf h klickt so kommen alle namen die mit h anfangen als link zum vorschein. da hat man nur einen ordner. geht das vieleicht besser?
__________________
cu & gruss....
CRAIX
Wenn mich jemand zwingt, Abstand zu wahren, habe ich den Trost,
dass er ihn gleichfalls wahrt...!!!
Geändert von CRAIX (10.02.2005 um 17:38 Uhr).
|
|
|
10.02.2005, 18:51
|
#4
|
|
TP-Specialist
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
|
genau so. einen ordner nehmen und erstmal alle dateien reinschmeissen und das ganze dann sortieren.
schmeiss mal alle deine txt-dateien in einen ordner. dann lies das verzeichnis aus und schmeiss alle namen in ein array ... vielleicht auch gleich nur die ersten buchstaben. und dann laesst du pruefen, welche buchstaben drin sind (also entwerde nur die ausgeben) oder alle buchstaben ausgeben und die buchstaben der reihe, fuer die ein objekt im array ist, gleich einen link aufbauen lassen.
ich hoffe, ich hab mich verstaendlich ausgedrueckt. hier is grad etwas stress im buero, so dass ich mich nur schwer konzentrieren kann. aber im grunde muesste es so gehen.
dann laesst du eben nach anklicken eines buchstaben nur die dateien ausgeben (als link), die mit dem betreffenden buchstaben beginnen. klar soweit?
|
|
|
10.02.2005, 19:36
|
#5
|
|
TP-Senior
Registriert seit: Mar 2004
|
also wen ich dich richtig verstanden habe muss ich folgendes zuerst machen.
einen ordner auslesen und alle .txt datein darin in ein array packen? --> richtig ?
habe im netz das script dafür gefunden
PHP-Code:
<?
$einlesen = "./";
$dir = dir($einlesen);
$x = 0;
while($datei = $dir -> read()){
if(eregi(".txt", $datei)){
$x++;
$datei = $datei[$x];
}
}
?>
wen das so weit richtig ist, wie muss ich weiter machen ?
__________________
cu & gruss....
CRAIX
Wenn mich jemand zwingt, Abstand zu wahren, habe ich den Trost,
dass er ihn gleichfalls wahrt...!!!
|
|
|
10.02.2005, 20:48
|
#6
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Ich komme aus dem Zauberwald
|
Das wäre so mein Ansatz, das zu lösen:
PHP-Code:
<?
//Einstellungen (wo liegt das Verzeichnis mit den ganzen Unterverzeichnissen? [von dieser php datei aus])
$pfad = 'daten';
//Ab hier brauchst du nichts mehr zu ändern
define( 'PFAD', dirname(__FILE__) . '/' . $pfad);
$file = catch_get( 'file' );
$dir = catch_get( 'dir' );
$dir = is_null( $dir ) ? 'a' : $dir;
//Diese Funktion erstellt unsere Navigation
function draw_navigation()
{
$string = "";
for( $i = 97; $i <= 122; $i++ )
$string .= draw_link( chr($i), chr($i) )."\n";
return $string;
}
//Diese Funlktion erstellt einen Link
function draw_link( $content, $directory, $file = null )
{
return is_null( $file )
? '<a href="'.$_SERVER["PHP_SELF"].'?dir='.$directory.'">'.$content.'</a>'
: '<a href="'.$_SERVER["PHP_SELF"].'?dir='.$directory.'&file='.$file.'">'.$content.'</a>';
}
//Holt uns die Variablen aus dem LInk
function catch_get( $param )
{
return isset( $_GET[$param] ) && substr_count( $_GET[$param], '/') == 0 && substr_count( $_GET[$param], "\\") == 0
? $_GET[$param] : null;
}
//Listet alle Dateien im Verzeichnis
function draw_dirContent( $dir )
{
//Pfad setzen
$dir = PFAD . '/' . $dir;
$string = "";
//Existiert unser Verzeichniss überhaupt?
if( !is_Dir( $dir ) ) die( 'Das Verzeichnis '.$dir.' existiert nicht!' );
//Öffnen wir das Verzeichnis mal
$opendir = opendir( $dir );
//Auslesen des Verzeichnisses
while( $file = readdir( $opendir ) )
if( substr($file, strlen($file)-4) == '.txt' )
$string .= "<li>".draw_link( $file, $dir, $file )."</li>\n";
//Verzeichniss wieder schließen
closedir( $opendir );
//Rückgabe des Inhalts
return $string;
}
//Zeig uns mal die Datei, die wir haben wollen
function draw_file( $dir, $file )
{
//Pfad setzen
$file = PFAD . '/' . $dir. '/'.$file;
//Existiert die Datei?
if( !file_Exists( $file ) ) die( "Die Datei ".$file." wurde nicht gefunden" );
return file_get_contents( $file );
}
//Tja, jetzt spielen wir mal mit unseren Funktionen rum
echo "<center>".draw_navigation().'</center>';
echo "<hr />";
echo '<ul>'.draw_dirContent( $dir )."</ul>";
echo '<hr />';
if( !is_null( $file ) )
echo '<pre>'.draw_file( $dir, $file )."</pre>";
?>
__________________
Zwei Dinge sind Unbestreitbar:- In einem Land, in dem Amerika Krieg führt, herrscht nachher Demokratie.
- Die Erde ist eine Scheibe!
Aktuelle Abendlektüre: Stephen King, Peter Strauch: Das schwarze Haus (Black House, 2001)
Aktuelle Bewertung: Abgesehen davon, dass der Roman mal wieder demonstriert, dass der Author geistesgestört ist, sehr träge; wenig Spannung; schlechter Erzählstil. King halt^^!
|
|
|
10.02.2005, 21:27
|
#7
|
|
TP-Senior
Registriert seit: Mar 2004
|
danke danke @Dennis The Menace,
nun habe ich aber noch eine frage. wie bekomme ich es hin das die .txt datei angezeigt wird wen ich drauf klicke und wie schaffe ich es das der link keine
.txt am ende hat. und noch 2 fragen dazu, möchte gerne das alle buchstaben groß geschrieben sind und das noch 2 links dazu kommen.
einmal 0-9 und einmal alle.
bei 0-9 sollen alle aufgefürt werden die mit zahlen beginnen und bei allen sollen alle links zu sehen sein.
könntest du mir bitte bitte noch mal helfen...
__________________
cu & gruss....
CRAIX
Wenn mich jemand zwingt, Abstand zu wahren, habe ich den Trost,
dass er ihn gleichfalls wahrt...!!!
Geändert von CRAIX (10.02.2005 um 21:29 Uhr).
|
|
|
10.02.2005, 21:38
|
#8
|
|
TP-Senior
Registriert seit: Oct 2004
Ort: -= Thüringen =-
|
Nabend @Dennis The Menace und all,
also ich hätte auch sehr großes interesse an den Script.
Habe es mal hochgeladen, die 2 Änderungen die mein Vorredner hatte würde ich auch gerne eingebaut haben.
habe mal einen Link erstellt wo man es in action sieht das Script.
schaut bitte hier es gehen nur Buchstabe h und m.
aber leider keine anzeige der inhalte der TXT Datei
Habe im netz eine Beispiel Seite gefunden, die es ungfähr wieder spiegelt wie,
ich es gerne haben möchte das Script.
schaut hier
__________________
gruß
RanDalt
Ich stehe immer am Anfang - war ich vorher am Ende ... ?
Geändert von RanDalt (10.02.2005 um 21:43 Uhr).
|
|
|
10.02.2005, 21:51
|
#9
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Ich komme aus dem Zauberwald
|
ups, ist mir gar nicht aufgefallen. Hab bei der erstellung des Skripts müll gebaut:
PHP-Code:
<?
//Einstellungen (wo liegt das Verzeichnis mit den ganzen Unterverzeichnissen? [von dieser php datei aus])
$pfad = 'daten';
//Ab hier brauchst du nichts mehr zu ändern
define( 'PFAD', dirname(__FILE__) . '/' . $pfad);
$file = catch_get( 'file' );
$dir = catch_get( 'dir' );
$dir = is_null( $dir ) ? 'a' : $dir;
//Diese Funktion erstellt unsere Navigation
function draw_navigation()
{
$string = "";
for( $i = 97; $i <= 122; $i++ )
$string .= draw_link( chr($i), chr($i) )."\n";
return $string;
}
//Diese Funlktion erstellt einen Link
function draw_link( $content, $directory, $file = null )
{
return is_null( $file )
? '<a href="'.$_SERVER["PHP_SELF"].'?dir='.$directory.'">'.$content.'</a>'
: '<a href="'.$_SERVER["PHP_SELF"].'?dir='.$directory.'&file='.$file.'">'.$content.'</a>';
}
//Holt uns die Variablen aus dem LInk
function catch_get( $param )
{
return isset( $_GET[$param] ) && substr_count( $_GET[$param], '/') == 0 && substr_count( $_GET[$param], "\\") == 0
? $_GET[$param] : null;
}
//Listet alle Dateien im Verzeichnis
function draw_dirContent( $dir )
{
//Pfad setzen
$nDir = PFAD . '/' . $dir;
$string = "";
//Existiert unser Verzeichniss überhaupt?
if( !is_Dir( $nDir ) ) die( 'Das Verzeichnis '.$nDir.' existiert nicht!' );
//Öffnen wir das Verzeichnis mal
$opendir = opendir( $nDir );
//Auslesen des Verzeichnisses
while( $file = readdir( $opendir ) )
if( substr($file, strlen($file)-4) == '.txt' )
$string .= "<li>".draw_link( $file, $dir, $file )."</li>\n";
//Verzeichniss wieder schließen
closedir( $opendir );
//Rückgabe des Inhalts
return $string;
}
//Zeig uns mal die Datei, die wir haben wollen
function draw_file( $dir, $file )
{
//Pfad setzen
$file = PFAD . '/' . $dir. '/'.$file;
//Existiert die Datei?
if( !file_Exists( $file ) ) die( "Die Datei ".$file." wurde nicht gefunden" );
return file_get_contents( $file );
}
//Tja, jetzt spielen wir mal mit unseren Funktionen rum
echo "<center>".draw_navigation().'</center>';
echo "<hr />";
echo '<ul>'.draw_dirContent( $dir )."</ul>";
echo '<hr />';
if( !is_null( $file ) )
echo '<pre>'.draw_file( $dir, $file )."</pre>";
?>
so müsste es erstmal klappen. (Mit dem Anzeigen der Dateiinhalte)
Zitat:
|
möchte gerne das alle buchstaben groß geschrieben sind
|
In Zeile 18 des Skriptes findest du folgendes:
Code:
$string .= draw_link( chr($i), chr($i) )."\n";
Dort müsstest du $i-32 raus machen:
PHP-Code:
$string .= draw_link( chr($i-32), chr($i) )."\n";
__________________
Zwei Dinge sind Unbestreitbar:- In einem Land, in dem Amerika Krieg führt, herrscht nachher Demokratie.
- Die Erde ist eine Scheibe!
Aktuelle Abendlektüre: Stephen King, Peter Strauch: Das schwarze Haus (Black House, 2001)
Aktuelle Bewertung: Abgesehen davon, dass der Roman mal wieder demonstriert, dass der Author geistesgestört ist, sehr träge; wenig Spannung; schlechter Erzählstil. King halt^^!
Geändert von Dennis The Menace (10.02.2005 um 21:58 Uhr).
|
|
|
10.02.2005, 21:55
|
#10
|
|
TP-Senior
Registriert seit: Oct 2004
Ort: -= Thüringen =-
|
klappt auch nett so recht. er schaut immer nur im ordner a nach.
bei allen link die man anklickt. texte sind nur im " ordner = h und m "
schau bitte
fehler gefunden,
schau mal ob das richtig ist : du hast geschrieben in zeile 19
$dir = is_null( $dir ) ? 'a' : $dir;
ich habe es geändert in :
$dir = is_null( $dir ) ? 'a,b,c,d,h,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z' : $dir;
und es ging, weiss aber nicht ob es einfach so zu ändern ist.
__________________
gruß
RanDalt
Ich stehe immer am Anfang - war ich vorher am Ende ... ?
Geändert von RanDalt (10.02.2005 um 22:03 Uhr).
|
|
|
10.02.2005, 22:02
|
#11
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Ich komme aus dem Zauberwald
|
@RanDalt:
klappt doch^^
(einfach mal aktuallisieren bei dir im Browser klicken)
__________________
Zwei Dinge sind Unbestreitbar:- In einem Land, in dem Amerika Krieg führt, herrscht nachher Demokratie.
- Die Erde ist eine Scheibe!
Aktuelle Abendlektüre: Stephen King, Peter Strauch: Das schwarze Haus (Black House, 2001)
Aktuelle Bewertung: Abgesehen davon, dass der Roman mal wieder demonstriert, dass der Author geistesgestört ist, sehr träge; wenig Spannung; schlechter Erzählstil. King halt^^!
|
|
|
10.02.2005, 22:12
|
#12
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Ich komme aus dem Zauberwald
|
Zitat:
|
$dir = is_null( $dir ) ? 'a,b,c,d,h,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x ,y,z' : $dir;
|
Das wird leider nicht gehen.
Was bedeutet die Zeile?
Falls in der URL kein Verzeichnis übergeben wurde, oder dieses nicht gültig ist, soll er ein Standartverzeichnis nehmen. Z.b. 'a'.
Also mein Code war dort schon richtig.
Dass deine Änderung nicht geht, siehst du hieran:
http://seitentest.se.funpic.de/2/auslesen.php
__________________
Zwei Dinge sind Unbestreitbar:- In einem Land, in dem Amerika Krieg führt, herrscht nachher Demokratie.
- Die Erde ist eine Scheibe!
Aktuelle Abendlektüre: Stephen King, Peter Strauch: Das schwarze Haus (Black House, 2001)
Aktuelle Bewertung: Abgesehen davon, dass der Roman mal wieder demonstriert, dass der Author geistesgestört ist, sehr träge; wenig Spannung; schlechter Erzählstil. King halt^^!
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
| | |