voithia me link enos variable me php

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 07 Αύγ 2006 00:38

pedia thelo na tipono stin othoni ta file pou iparxoun se ena folder ke otan pata pano tous o xristis na ton pernoun stin sigkekrimeni selida pou dialexe

exo grapsi ton parakato kodiko alla distixos den mou kani hyperlink oti tiponi gia na mpori o xristis na akolouthisi to file

Κώδικας: Επιλογή όλων

<?php
$dh = opendir&#40;"test"&#41; or die &#40;"Couldn't open directory"&#41;;
while &#40;$file = readdir&#40;$dh&#41;&#41; &#123;
		echo "<a src=\"$file\">$file</a><br>";
&#125;
closedir&#40;$dh&#41;;
?>
ti ftei?

Άβαταρ μέλους
Risk
Δημοσιεύσεις: 319
Εγγραφή: 02 Μάιος 2006 01:16
Τοποθεσία: Κάπου εδώ γύρω...
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από Risk » 07 Αύγ 2006 02:22

"Apoel" σε πρώτη φάση αυτό που βλέπω είναι κάποιο συντακτικό λάθος στην echo. Κατα προσωπική άποψη η σωστή σύνταξη είναι:
echo ("<a src=\"$file\">". $file. "</a><br>");
Ελπίζω σαν Junior PHP Developer να σου δίνω σωστή απάντηση. Σίγουρα κάποιος Senior θα με διορθώσει αν κάνω λάθος!

Αυτό που ακόμη βλέπω και πιστευω ότι πρέπει να το πω γιατί μπορεί να είναι λάθος είναι κάτι για την ματαβλητή $file. Κατα προσωπική άποψη και πάλι, ίσως θα πρέπει να δημιουργήσεις ένα πίνακα $file[], ώστε εκεί να αποθηκεύονται όλα τα file που υπάρχουν μέσα στο folder test. Έπειτα μέσα από έναν βρόγχο for να φέρνεις όλα τα file με την παραπάνω εντολή echo τα οποία θα είναι φυσικά και link προς στα αντίστοιχα περιεχόμενα του κάθε file. Και στο λέω αυτό γιατί έτσι όπως βλέπω τον κώδικά σου κάτι μου λέει πως η μεταβλητή $file θα κρατάει κάθε φόρα μόνο το τελευταίο file απο το folder test.
Εικόνα

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 07 Αύγ 2006 03:02

thnx risk alla to echo pou exo ine ke ekino sosto. To $file krata mia xara to directory tou kathe file, ekino pou den mporo na katalavo ine oti i lista vgeni mia xara, vlepo to source tis selidas pou mou emfanizi ke ine ke ekinos sostos me ta links alla den mou ta exi hyperlink gia na mporo na ktipiso pano tous ke na pao sto link pou krata to kathena

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 07 Αύγ 2006 03:04

entometaxi tha parakaleso ton administrator na metaferi to thema sto php programatismos giati molis paratirisa oti to ekane create sto php ta dika mas script. ixa pola tabs anixta ke sixisa ta tabs gia afto apologoume, pantos i aporia mou parameni :p

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από zeppos » 07 Αύγ 2006 09:40

Κώδικας: Επιλογή όλων

<?php
$dh = opendir&#40;'.'&#41;; // Αν το αρχείο αυτό δεν είναι στον ίδιο φάκελλο, γράψε όλη τη διαδρομή

/* Αυτός είναι ο ΣΩΣΤΟΣ τρόπος */
while &#40;false !== &#40;$file = readdir&#40;$dh&#41;&#41;&#41; &#123; 
if&#40;$file!="." and $file !=".."&#41;
echo "<a href=\"$file\">$file</a><br>";
&#125;

/* Αυτός είναι ΛΑΘΟΣ. */
while &#40;$file = readdir&#40;$dh&#41;&#41; &#123; 
echo "<a src=\"$file\">$file</a><br>"; 
&#125;

closedir&#40;$dh&#41;; 

?> 

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 07 Αύγ 2006 10:58

thnx a lot zeppos, alla gia pio logo to diko mou ine lathos?

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από zeppos » 07 Αύγ 2006 11:14

Σε παρακαλώ πήγαινε στο
http://gr.php.net/manual/el/function.readdir.php
για περισσότερα..

Και το <a src=""> δεν δημιουργεί λινκ αλλα μόνο εμφανίζει το όνομα του αρχείου.
Το σωστό είναι <a href="">

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 07 Αύγ 2006 11:52

thnx again zeppos

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 07 Αύγ 2006 18:47

pedia ginete anti na anigo amesos ekino to file pou epilego, na me perni se mia standard selida(afto ine efkolo ke to ekana idi :p) ke na mou anigi eki to arxio?

dokimasa na to kano me session kratontas to $file mesa se afto ala den doulevi

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 08 Αύγ 2006 02:22

?????

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από zeppos » 08 Αύγ 2006 11:52

Για να γίνει αυτό που ζητάς (κατά την μικρή σχετικά εμπειρία μου) θα πρέπει τα αρχεία του φακέλλου σου να είναι αναγνώσιμα από ένα πρόγραμμα php, πχ. με fopen. Δηλ τα αρχεία να είναι txt ή οτιδήποτε άλλο αναγνώσιμο, σαν ένα είδος βάσης δεδομένων.
Έχεις λοιπόν την σελίδα που την λες στάνταρ., πχ. page.php η οποία έχει και το πρόγραμμα που θα τα διαβάζει και με ορισμό για κάθε υπερσύνδεσμο σαν $file_id=$_GET['file'];
Αρα στον αρχικό κώδικα που έχεις για το readdir θα κάνεις τις παρακάτω αλλαγές:
<?php
$page="page.php";
$dh = opendir('.');

while (false !== ($file = readdir($dh))) {
if($file!="." and $file !=".."){

echo "<a href=\"$page?file=$file\">$file</a><br>";
}}


closedir($dh);

?>

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 08 Αύγ 2006 14:39

oxi nomizo den katalaves, exo grapsi mia xara ton kodiko. mou emfanizete i selida me ta files ke san link exo vali mia standard selida mesa stin opia tha emfanizete to sigkekrimeno file, to mono pou den xero pos na kano ine me pio tropo na peraso to link tis sigkekrimenis selidas stin standard gia na to anigi. To fopen ke ola afta ta egrapsa

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από zeppos » 08 Αύγ 2006 15:14

Όπως λες δεν θα κατάλαβα τι ζητάς. Πάντως από την σαφήνεια της κάθε ερώτησης, εξαρτάται σε μεγάλο βαθμό και η σωστή ή μη απάντηση.. Δεν θέλω να με παραξηγήσεις αλλά νομίζω ότι αυτό που ζητάς είναι τα λίγα που σου έγραψα.. Ετσι νομίζω τουλάχιστον.
Σκέτο λινκ με την στάνταρ σελίδα, χωρίς να έχει την εντολή να πάει να ανοίξει το συγκεκριμένο αρχείο..δεν κάνει για την δουλειά που θέλεις.

Βέβαια μπορεί κάποιος άλλος να κατάλαβε καλύτερα την ερώτηση.;;;;

Άβαταρ μέλους
apoel
Δημοσιεύσεις: 350
Εγγραφή: 18 Ιούλ 2005 23:46
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από apoel » 08 Αύγ 2006 15:48

mpori na min to diatiposa sosta :p vasika kata kapio tropo exis dikeo me ton tropo pou mou ipes alla den mou doulevi sosta

exo vali ton akoloutho kodiko stin standard selida

Κώδικας: Επιλογή όλων

<?php
$fp = fopen&#40;"$_SESSION&#91;$file&#93;", "r"&#41; or die &#40;"Couldn't open it"&#41;;
while &#40;!feof&#40;$fp&#41;&#41; &#123;
	$line = fgets&#40;$fp, 1024&#41;;
	$mtime = filemtime&#40;"$_SESSION&#91;arxio&#93;"&#41;;
	echo "$line<p><p>";
	echo "last message received on&#58; ";
	echo date&#40;"D d M Y g&#58;i A", $mtime&#41;;
&#125;
o kodikos sinexizi vevea alla ipa na min ton valo olo, ekino pou prospatho na kano ego ine na vro tropo na valo tin diefthinsi tou arxiou pou dialexe o allos eki pou evala to "$_SESSION[$file]".

me ton tropo pou mou to les esi zeppo den mporo na peraso tin diefthinsi tou file eki, mallon sou to ixa diatiposi lathos ke gia afto apologoume. Tora pou nomizo egina pio xekatharos :D exis kamia idea ?

zeppos
Δημοσιεύσεις: 431
Εγγραφή: 26 Μαρ 2006 10:43
Τοποθεσία: Kyklades
Επικοινωνία:

voithia me link enos variable me php

Δημοσίευση από zeppos » 09 Αύγ 2006 09:31

Καλημέρα
Βλέπω οτι έχουμε διαφορετικό τρόπο προσέγγισης του θέματος. Εγώ δεν γνωρίζω τον λόγο που θέλεις τα SESSIONS. Αυτό που κατάλαβα είναι οτι έχεις μια σειρά αρχείων σε ένα φάκελλο και θέλεις να παρουσιάζεται σε μια σελίδα σαν ένας κατάλογος με τα ονόματα των αρχείων σε υπερσύνδεσμο. Εν συνεχεία ο υπερσύνδεσμος θα ανοίγει μια "στάνταρ" σελίδα, σαν ένα template πχ. που θα παρουσιάζει και θα τυπώνει τα δεδομένα που υπάρχουν στο συγκεκριμένο υπερσύνδεσμο (αρχείο). Αν είναι έτσι, το παρακάτω θα είναι αυτό που θα παρουσιάζει τον κατάλογο σε υπερσύνδεσμο σε κάποιο χώρο. (Υποτίθεται όλα τα αρχεία είναι στον ίδιο φάκελλο)
<?php
$page="page.php";
$dh = opendir('.');
while (false !== ($file = readdir($dh))) {
if($file!="." and $file !=".."){
echo "<a href=\"$page?file=$file\">$file</a><br>";
}}
closedir($dh);
?>
Και η παρακάτω είναι η "στάνταρ" σελίδα με όνομα: page.php:
<html>
<head>
<title>Test Page</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1253" />
</head>
<body bgcolor="#eeeeee" text="#000000">
<table width="500" align="center">
<tr><th>ΣΧΟΛΙΑ</th></tr>
<tr><td bgcolor="#ffffff">
<?php
$file_id=$_GET['file'];
$file =$file_id;
if(is_file($file)) {
readfile($file); //Αν το αρχείο είναι ένα απλό κείμενο.

//Αν το αρχείο έχει τμήματα με καταχωρήσεις από φόρμα και θέλεις να τα παρουσιάσεις σε διαφορετικά πεδία πρέπει να ανοίξει με άλλο τρόπο. (fopen)
}
?>
<td></tr>
</table>
</body>
</html>
Αυτά για την ώρα. Δοκίμασέ το και πες μου αν είναι έτσι ή θέλεις κάτι άλλο.

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες