scan a folder with images

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

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

Απάντηση
Άβαταρ μέλους
parianos
Δημοσιεύσεις: 79
Εγγραφή: 17 Οκτ 2009 21:04
Επικοινωνία:

scan a folder with images

Δημοσίευση από parianos » 14 Σεπ 2010 20:52

Καλησπέρα σας όλους...έχω εδώ και καιρό που ασχολούμαι με το εν λόγω θέμα μια και είμαι νουμπάκι στην php.
έχω τον εξής κώδικα

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

<?php
$dir = "images/foto/";
$dh  = opendir&#40;$dir&#41;;
while &#40;false !== &#40;$filename = readdir&#40;$dh&#41;&#41;&#41; &#123;
if &#40;$files != "." && $files != ".."&#41; &#123;
$files&#91;&#93; = $filename;
 &#125;
&#125;
$length=count&#40;$files&#41;;
$img="<div align='center' >";
for &#40;$i=2;$i<=$length;$i++&#41;&#123;
$img.="<a href='images/foto/$files&#91;$i&#93;' rel='lightbox&#91;roadtrip&#93;' >
<img src='images/foto/$files&#91;$i&#93;' width='80' height='90'/></a>";

&#125;
$img.="</div>";


?>
όπου βέβαια σκαναρει τον φάκελο foto βλέπει τις φωτό και τις περνά σε πίνακα, το κακό είναι ότι περνά και τα αρχεία '.' και '..'παρότι του έχω θέσει στην If να μην τα περνά και έπειτα όταν καλώ ένα jquery( είναι το lightbox,το γνωστό που κυκλοφορεί στον ιντερνετ) και ανοίγω μία μία τις φωτό γράφει σαν αριθμό το σύνολο των φωτό το οποίο είναι αυξημένο κατα δύο (φαντάζομαι λόγο τον '.' και '..') και όταν βέβαια φτάνει να τα ανοίξει κολλάει(λογικό...).σκέφτηκα να βάλω την for να ξεκινά για $i=2 αλλά πάλι μου κάνει τα ίδια...το jquery δηλαδη βλέπει όλα τα αρχεία...
επίσης μία ακόμα ερώτηση...
θέλω να δείχνει τις φωτό ανά 3...
και αυτό το έκανα βάζοντας μία for να μετρά ανα 3 και να κόβει την γραμμή του πίνακα και να ξαναξεκινά καινούργια...
το κακό με αυτό ήταν ότι όταν δεν ήταν πολλαππλάσιο του 3 ο αριθμός των φωτό πέταγε την τελευταία και δύο ή τρία κελιά άδεια οπότε πάλι στο τέλος το jquery κολούσε...
το ξέρω ότι φτιάχνοντας ένα site μπορείς να επιλέξεις ανάλογα με το τί υλικό έχεις πόσο θα κόβει αλλά έστω ότι φτιάχνω και μία φόρμα για να ανεβάζω τις φωτό στο φάκελο όποτε θέλω αλλά και να τις σβήνω αντίστοιχα, εκεί δεν θα μπορώ να επεμβαίνω στον κώδικα...
μία σκέψη???
σας ευχαριστώ!!!!

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

scan a folder with images

Δημοσίευση από Khronos » 14 Σεπ 2010 21:17

Λογικά έτσι θα σου δουλέψει.

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

if &#40;$files !== "." && $files !== ".."&#41; &#123;

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

scan a folder with images

Δημοσίευση από fafos » 14 Σεπ 2010 21:52

doulepse me thn glob gia na pareis mono ta arxeia pou thes:

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

function glob_ext_i&#40;$exts, $dir = './'&#41;
&#123;
    if &#40;substr&#40;$dir, -1&#41; != '/'&#41; &#123;
        $dir .= '/';
    &#125;
    $glob_str = $dir . '*.&#123;';
    foreach &#40;$exts as $ext&#41; &#123;
        $glob_str .= strtolower&#40;$ext&#41; . ',' . strtoupper&#40;$ext&#41; . ',';
    &#125;
    $glob_str = rtrim&#40;$glob_str, ','&#41; . '&#125;';
    return glob&#40;$glob_str, GLOB_BRACE&#41;;
&#125; 

auth h function tha epileksei mono ta arxeia me ta extensions pou thes:

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

$Pics = 'images/foto/';
$exts = array&#40;'JPG', 'png', 'jpeg', 'gif'&#41;;
if &#40;$glob = glob_ext_i&#40;$exts, $Pics&#41;&#41; &#123;
$n=1;
    foreach &#40;$glob as $file&#41; &#123;
      
if&#40;!&#40;$n % 3&#41;&#41; &#123; $bg = "<br>"; &#125; else &#123; $bg = ''; &#125;    

$img.="<a href='$file' rel='lightbox&#91;roadtrip&#93;' >
<img src='$file' width='80' height='90'/></a>$bg";

$n++;

        
    
    &#125;
&#125; 

echo $img;    
edo: $exts = array('JPG', 'png', 'jpeg', 'gif'); vazeis ta eidh arxeion pou thes na emfaniseis kai apo kato trexeis thn function gia na kanei thn epilogh..

parakato exo ena $n=1; kai parakato if(!($n % 3)) { $bg = "<br>"; } else { $bg = ''; }

edo tou leo se kathe 3 fotografies na petaei kai ena br.. esy pes tou na kanei oti thes..

meta thn emfanish ths foto tou dino auto $n++; gia na looparei to $n se kathe foto pou vriskei..


olos o kodikas:

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

<?php

function glob_ext_i&#40;$exts, $dir = './'&#41;
&#123;
    if &#40;substr&#40;$dir, -1&#41; != '/'&#41; &#123;
        $dir .= '/';
    &#125;
    $glob_str = $dir . '*.&#123;';
    foreach &#40;$exts as $ext&#41; &#123;
        $glob_str .= strtolower&#40;$ext&#41; . ',' . strtoupper&#40;$ext&#41; . ',';
    &#125;
    $glob_str = rtrim&#40;$glob_str, ','&#41; . '&#125;';
    return glob&#40;$glob_str, GLOB_BRACE&#41;;
&#125; 

$Pics = 'images/foto/';
$exts = array&#40;'JPG', 'png', 'jpeg', 'gif'&#41;;
if &#40;$glob = glob_ext_i&#40;$exts, $Pics&#41;&#41; &#123;
$n=1;
    foreach &#40;$glob as $file&#41; &#123;
      
if&#40;!&#40;$n % 3&#41;&#41; &#123; $bg = "<br>"; &#125; else &#123; $bg = ''; &#125;    

$img.="<a href='$file' rel='lightbox&#91;roadtrip&#93;' >
<img src='$file' width='80' height='90'/></a>$bg";

$n++;

        
    
    &#125;
&#125; 

echo $img;    
?> 
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
dimitrisdamo
Δημοσιεύσεις: 78
Εγγραφή: 19 Νοέμ 2009 20:00
Επικοινωνία:

scan a folder with images

Δημοσίευση από dimitrisdamo » 14 Σεπ 2010 21:56

επειδη ειχα ασχοληθεί και εγώ με αυτό και με πέδεψε λιγο τελικά δεν το χρησιμοποίση αλλα κάνει δουλεια το είχα κανει να γίντε όλο αυτοματα .παρε κώδικα απο απο εκέι το έφερα στα μέτρα μου ελπίζω να σου χρησημεύσει.
Συνημμένα
light.rar
(439.15 KiB) Μεταφορτώθηκε 197 φορές

Άβαταρ μέλους
parianos
Δημοσιεύσεις: 79
Εγγραφή: 17 Οκτ 2009 21:04
Επικοινωνία:

scan a folder with images

Δημοσίευση από parianos » 14 Σεπ 2010 22:14

ωπ πεσανε απαντησεις όταν έγραφα σας ευχαριστώ πολύ παιδιά όλους!!θα τα ψάξω και τα δύο σας ευχαριστώ πολύ!

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

scan a folder with images

Δημοσίευση από korgr » 15 Σεπ 2010 11:18

Πάντως αν θες να δουλέψει ο δικός σου κώδικας, το λάθος είναι πως πρέπει να αντικαταστήσεις το

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

if &#40;$files != "." && $files != ".."&#41; &#123; 
με το

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

if &#40;$filename != "." && $filename != ".."&#41; &#123; 

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

scan a folder with images

Δημοσίευση από fafos » 15 Σεπ 2010 16:47

korgr έγραψε:Πάντως αν θες να δουλέψει ο δικός σου κώδικας, το λάθος είναι πως πρέπει να αντικαταστήσεις το

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

if &#40;$files != "." && $files != ".."&#41; &#123; 
με το

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

if &#40;$filename != "." && $filename != ".."&#41; &#123; 
vasika to apofeugoume ayto.. prepei na zhtame na emfanisei ta formats pou theloume kai oxi auta pou den theloume.. mhn koitas pou edo exei mono photos, se kapoio allo folder isos "xasoume thn mpala" (vlepe xthesino agona :lol: ).. alla akoma kai se fakellous me images mono mporei na anevasoume kana allo eidos arxeiou opos gia paradeigma kapoia ftp programmata pou anevazoun kai dika tous arxeia me to etsi thelo..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

scan a folder with images

Δημοσίευση από korgr » 15 Σεπ 2010 17:52

Δάσκαλε συμφωνώ!
Απλά ανάφερα το λάθος που έκανε και του εμφάνιζε και τις τελείες (για εγκυκλοπαιδικούς λόγους).
Τώρα κατά τ' άλλα, αυτές οι δουλειές γίνονται όμορφα με objects, με τις ιδιότητες και τις μεθόδους τους, όπου θα φιλτράρεις και τα extensions :D

Αρκετά είπα, επιστρέφω στην class που δουλεύω τώρα :lol:

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

scan a folder with images

Δημοσίευση από fafos » 15 Σεπ 2010 18:06

korgr έγραψε:Δάσκαλε συμφωνώ!
Απλά ανάφερα το λάθος που έκανε και του εμφάνιζε και τις τελείες (για εγκυκλοπαιδικούς λόγους).
Τώρα κατά τ' άλλα, αυτές οι δουλειές γίνονται όμορφα με objects, με τις ιδιότητες και τις μεθόδους τους, όπου θα φιλτράρεις και τα extensions :D

Αρκετά είπα, επιστρέφω στην class που δουλεύω τώρα :lol:
kai ego den eixa ti na kano kai efeiaksa gia ena filo mia class pou pairxei oiandhpote xml kai to kanei "liana".. an thn xreiazesai, epikoinohse.. :lol:
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

scan a folder with images

Δημοσίευση από korgr » 15 Σεπ 2010 18:22

Ενδιαφέρομαι :D
notis [at] korinthorama.gr pleaseeeee

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

scan a folder with images

Δημοσίευση από fafos » 15 Σεπ 2010 20:30

korgr έγραψε:Ενδιαφέρομαι :D
notis [at] korinthorama.gr pleaseeeee
done (se 2 doseis :P )

sory parianos gia to offtopic..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Απάντηση

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

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

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