rafinos Δημοσ. 27 Σεπτεμβρίου 2016 Δημοσ. 27 Σεπτεμβρίου 2016 <? $zip = new ZipArchive; if ($zip->open('pdf.zip', ZipArchive::OVERWRITE) === TRUE) { if ($handle = opendir('uploads')) { // Ο αριθμός των αρχείων που έχεις κατεβάσει και τον έστειλες με τη φόρμα που λέγαμε παραπάνω if(isset($_POST['auto_pou_estiles'])){ $x = $_POST['auto_pou_estiles']; } // Add all files inside the directory while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != ".." && !is_dir('./uploads/' . $entry)) { if(isset($_POST['auto_pou_estiles')){ if($x <= 0){//Αν το $x είναι 0 ή και μικρότερο τότε κατεβάζει αρχεία $zip->addFile('./uploads/' . $entry); } $x--; }else{ $zip->addFile('./uploads/' . $entry); } } } closedir($handle); } $zip->close(); } rename('pdf.zip', './admin/download/All_Pdf_From_The_Form.zip'); header('Location: '.'./admin/download/All_Pdf_From_The_Form.zip'); ?> Βέβαια όλο αυτό ίσως είναι λίγο μπακάλικο, αλλά ωστόσο δουλεύει (μάλλον).
ekriksi Δημοσ. 27 Σεπτεμβρίου 2016 Μέλος Δημοσ. 27 Σεπτεμβρίου 2016 ωραίος φίλε λοιπόν τελείωσα το πρότζεκτ θα ανεβάσω εδώ το zip οποίος θέλει να το πάρει να το αλλάξει και να το χρησιμοποιήσει η να μου δώσει καμιά ιδέα για μελλοντικά update! σε ευχαριστώ φίλε για την βοήθεια λογικά θα σε ξανά ενοχλήσω σύντομα Ορίστε η φόρμα οποίος θέλει ας πει ιδέες και σχόλια γενικά Download: SubmissionForm
PC_MAGAS Δημοσ. 27 Σεπτεμβρίου 2016 Δημοσ. 27 Σεπτεμβρίου 2016 Αγαπητή Έκρηξη. Για να ανεβάζεις κώδικα σου συνηστώ να τα βάζεις σε git αποθετήριο. Με αυτό ξέρεις ποιος άλλαξε τι και να καταγονται αυτόματα οι αλλαγές σε αρχεία κειμένου συν ότι όλοι μπορούν να κατεβάσουν το αριστούργημά σου. Μπορείς να "hοστάρεις" τον κώδικά σου στις ακόλουθες πλατφόρμες: http://github.com https://about.gitlab.com/ http://bitbucket.com Τέλος το αργαλείο που χρησιμοποιείς είναι το git. Για να αρχίσεις δες εδώ https://git-scm.com/docs/gittutorial
ekriksi Δημοσ. 28 Σεπτεμβρίου 2016 Μέλος Δημοσ. 28 Σεπτεμβρίου 2016 χαχαχαχ μια παρατήρηση είμαι αγαπητός! ωραίος θα το ανεβάσω εκεί
ekriksi Δημοσ. 28 Σεπτεμβρίου 2016 Μέλος Δημοσ. 28 Σεπτεμβρίου 2016 <? $zip = new ZipArchive; if ($zip->open('pdf.zip', ZipArchive::OVERWRITE) === TRUE) { if ($handle = opendir('uploads')) { // Ο αριθμός των αρχείων που έχεις κατεβάσει και τον έστειλες με τη φόρμα που λέγαμε παραπάνω if(isset($_POST['auto_pou_estiles'])){ $x = $_POST['auto_pou_estiles']; } // Add all files inside the directory while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != ".." && !is_dir('./uploads/' . $entry)) { if(isset($_POST['auto_pou_estiles')){ if($x <= 0){//Αν το $x είναι 0 ή και μικρότερο τότε κατεβάζει αρχεία $zip->addFile('./uploads/' . $entry); } $x--; }else{ $zip->addFile('./uploads/' . $entry); } } } closedir($handle); } $zip->close(); } rename('pdf.zip', './admin/download/All_Pdf_From_The_Form.zip'); header('Location: '.'./admin/download/All_Pdf_From_The_Form.zip'); ?> Βέβαια όλο αυτό ίσως είναι λίγο μπακάλικο, αλλά ωστόσο δουλεύει (μάλλον). φίλε δουλεύει άλλα δεν έχω καταλάβει ακριβώς πως?? πχ του βάζω αριθμό 3 από μια φόρμα που χω φτιάξει και κατεβάζει κάποια αρχεία από το φάκελο του βάζω αριθμό 5 κατεβάζει άλλα αρχεία το θέμα είναι ότι κατεβάζει ότι θέλει ενώ εγώ ουσιαστικά θέλω όταν βάζω τον αριθμό 3 (ο οποίος θα είναι και το όνομα του αρχείου πχ 3.pdf) να κατεβάζει από το 3.pdf και κάτω! (3.pdf, 4.pdf, 5.pdf, 6.pdf κτλ
rafinos Δημοσ. 28 Σεπτεμβρίου 2016 Δημοσ. 28 Σεπτεμβρίου 2016 Τα αρχεία έχουν τέτοιο όνομα; Πχ είναι 1.pdf, 2.pdf, 3.pdf κτλ?
ekriksi Δημοσ. 29 Σεπτεμβρίου 2016 Μέλος Δημοσ. 29 Σεπτεμβρίου 2016 Τα αρχεία έχουν τέτοιο όνομα; Πχ είναι 1.pdf, 2.pdf, 3.pdf κτλ? τα αρχεία θα είναι της μορφής aaaa-001.pdf, aaaa-002.pdf, aaaa-003.pdf κτλ, ΥΓ το "aaaa" το αλλάζω εγώ σε κάθε φόρμα που ανοίγω!
rafinos Δημοσ. 29 Σεπτεμβρίου 2016 Δημοσ. 29 Σεπτεμβρίου 2016 Τι εννοείς το αλλάζεις; Πάντως αν το μόνο πράγμα που αλλάζει στα ονόματα είναι το νούμερο, τότε... Απλά ας μας απαντήσει κάποιος αν το sort έχει κάποιο θέμα του στυλ να βάζει πρώτα το 1 και μετά το 0. <? $zip = new ZipArchive; if ($zip->open('pdf.zip', ZipArchive::OVERWRITE) === TRUE) { if ($handle = opendir('uploads')) { // Ο αριθμός των αρχείων που έχεις κατεβάσει και τον έστειλες με τη φόρμα που λέγαμε παραπάνω if(isset($_POST['auto_pou_estiles'])){ $x = $_POST['auto_pou_estiles']; } $array_with_entries = array(); //το γράφω έτσι γιατί νομίζω πως είχε θέμα σε παλιότερες php // Add all files inside the directory while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != ".." && !is_dir('./uploads/' . $entry)) { $array_with_entries[] = $entry; } } closedir($handle); sort($array_with_entries); //ταξινομεί τα αρχεία με βάσει το όνομα //τρέχεις τον πίνακα με τα ονόματα των αρχείων foreach($array_with_entries as $entry){ if(isset($x)){ if($x<=0){ //αν το $x έχουν προσπελαστεί τα αρχεία που έχεις κατεβάσει τότε τα περνάει στο zip $zip->addFile('./uploads/' . $entry); } $x--; }else{ $zip->addFile('./uploads/' . $entry); } } } $zip->close(); } rename('pdf.zip', './admin/download/All_Pdf_From_The_Form.zip'); header('Location: '.'./admin/download/All_Pdf_From_The_Form.zip'); ?>
ekriksi Δημοσ. 29 Σεπτεμβρίου 2016 Μέλος Δημοσ. 29 Σεπτεμβρίου 2016 όπα φίλε δυνατός ευχαριστώ πολύ θα το δοκιμάσω και θα σου πω τι κάνει!!
ekriksi Δημοσ. 29 Σεπτεμβρίου 2016 Μέλος Δημοσ. 29 Σεπτεμβρίου 2016 μετά από μερικά τεστ λοιπόν αυτό δουλεύει άλλα πως, εγώ μέσα στον φάκελο (uploads) έχω αρχικά 5 άλλα αρχεία άσχετα τα οποία είναι για να μου εμφανίζουν σε μια html τι έχει ο φάκελος. μαζί έβαλα και 10 αρχεία του τύπου aaaa-001.pdf, aaaa-002.pdf, ...., aaaa-010.pdf, τρέχω λοιπόν την φόρμα που θα γράψω τον αριθμό, βάζω αριθμό 3 οκ κατεβαίνει το zip. ο φάκελος uploads έχει αυτά μέσα το zip με αριθμό 3 ΥΓ: έβγαλα από τον φάκελο τα πρώτα 5 αρχεία και έμειναν μόνο τα pdf μέσα, με αριθμό 10 δεν δουλεύει και με αριθμό 9 μου κατεβάζει ζιπ με το aaaa-009.pdf
rafinos Δημοσ. 29 Σεπτεμβρίου 2016 Δημοσ. 29 Σεπτεμβρίου 2016 Με 10 είναι λογικό να μην σου κατεβάζει τίποτα. Λάθος δικό μου... Αυτό κάν' το: $x = $_POST['auto_pou_estiles'] - 1; Με το 9 άρα θα πρέπει να σου κατεβάζει μόνο ένα. Απλά όπως φαίνεται υπάρχει το πρόβλημα που είπα παραπάνω. Πηγαίνει πρώτο στον πίνακα το aaaa-010.pdf Εμφάνισε τα περιεχόμενα του πίνακα μετά το sort και θα καταλάβεις. Ας μας απαντήσει κάποιος που ξέρει ακριβώς τι παίζει με το sort().
ekriksi Δημοσ. 29 Σεπτεμβρίου 2016 Μέλος Δημοσ. 29 Σεπτεμβρίου 2016 οκ πάντως φίλε είσαι φοβερός σε ευχαριστώ για της πολλαπλές βοήθειες!
ekriksi Δημοσ. 4 Οκτωβρίου 2016 Μέλος Δημοσ. 4 Οκτωβρίου 2016 καλησπερα φιλε και παλι λοιπον εχω βαλει αυτον των κωδικα <!doctype html> <html> <head> <meta charset="UTF-8"> <link rel="shortcut icon" href="./.favicon.ico"> <title>Directory Contents</title> <link rel="stylesheet" href="./.style.css"> <script src="./.sorttable.js"></script> </head> <body> <div id="container"> <h1>PDF File</h1> <table class="sortable"> <thead> <tr> <th>Filename</th> <th>Type</th> <th>Size</th> <th>Date Modified</th> </tr> </thead> <tbody><?php // Adds pretty filesizes function pretty_filesize($file) { $size=filesize($file); if($size<1024){$size=$size." Bytes";} elseif(($size<1048576)&&($size>1023)){$size=round($size/1024, 1)." KB";} elseif(($size<1073741824)&&($size>1048575)){$size=round($size/1048576, 1)." MB";} else{$size=round($size/1073741824, 1)." GB";} return $size; } // Checks to see if veiwing hidden files is enabled if($_SERVER['QUERY_STRING']=="hidden") {$hide=""; $ahref="./"; $atext="Hide";} else {$hide="."; $ahref="./?hidden"; $atext="Show";} // Opens directory $myDirectory=opendir("."); // Gets each entry while($entryName=readdir($myDirectory)) { $dirArray[]=$entryName; } // Closes directory closedir($myDirectory); // Counts elements in array $indexCount=count($dirArray); // Sorts files sort($dirArray); // Loops through the array of files for($index=0; $index < $indexCount; $index++) { // Decides if hidden files should be displayed, based on query above. if(substr("$dirArray[$index]", 0, 1)!=$hide) { // Resets Variables $favicon=""; $class="file"; // Gets File Names $name=$dirArray[$index]; $namehref=$dirArray[$index]; // Gets Date Modified $modtime=date("M j Y g:i A", filemtime($dirArray[$index])); $timekey=date("YmdHis", filemtime($dirArray[$index])); // Separates directories, and performs operations on those directories if(is_dir($dirArray[$index])) { $extn="<Directory>"; $size="<Directory>"; $sizekey="0"; $class="dir"; // Gets favicon.ico, and displays it, only if it exists. if(file_exists("$namehref/favicon.ico")) { $favicon=" style='background-image:url($namehref/favicon.ico);'"; $extn="<Website>"; } // Cleans up . and .. directories if($name=="."){$name=". (Current Directory)"; $extn="<System Dir>"; $favicon=" style='background-image:url($namehref/.favicon.ico);'";} if($name==".."){$name=".. (Parent Directory)"; $extn="<System Dir>";} } // File-only operations else{ // Gets file extension $extn=pathinfo($dirArray[$index], PATHINFO_EXTENSION); // Prettifies file type switch ($extn){ case "png": $extn="PNG Image"; break; case "jpg": $extn="JPEG Image"; break; case "jpeg": $extn="JPEG Image"; break; case "svg": $extn="SVG Image"; break; case "gif": $extn="GIF Image"; break; case "ico": $extn="Windows Icon"; break; case "txt": $extn="Text File"; break; case "log": $extn="Log File"; break; case "htm": $extn="HTML File"; break; case "html": $extn="HTML File"; break; case "xhtml": $extn="HTML File"; break; case "shtml": $extn="HTML File"; break; case "php": $extn="PHP Script"; break; case "js": $extn="Javascript File"; break; case "css": $extn="Stylesheet"; break; case "pdf": $extn="PDF Document"; break; case "xls": $extn="Spreadsheet"; break; case "xlsx": $extn="Spreadsheet"; break; case "doc": $extn="Microsoft Word Document"; break; case "docx": $extn="Microsoft Word Document"; break; case "zip": $extn="ZIP Archive"; break; case "htaccess": $extn="Apache Config File"; break; case "exe": $extn="Windows Executable"; break; default: if($extn!=""){$extn=strtoupper($extn)." File";} else{$extn="Unknown";} break; } // Gets and cleans up file size $size=pretty_filesize($dirArray[$index]); $sizekey=filesize($dirArray[$index]); } // Output echo(" <tr class='$class'> <td><a href='./$namehref'$favicon class='name'>$name</a></td> <td><a href='./$namehref'>$extn</a></td> <td sorttable_customkey='$sizekey'><a href='./$namehref'>$size</a></td> <td sorttable_customkey='$timekey'><a href='./$namehref'>$modtime</a></td> </tr>"); } } ?> </tbody> </table> </div> <script language="javascript"> document.onmousedown=disableclick; function disableclick(event) { if(event.button==2) { return false; } } </script> </body> </html> ουσιαστικά κάνει αυτό Site: demo γνωρίζεις πως θα μπορέσω να κολλήσω μια ακόμα στήλη με ckeckbox έτσι ώστε να επιλέγει ο admin πια θα κατεβάζει σε zip??
rafinos Δημοσ. 4 Οκτωβρίου 2016 Δημοσ. 4 Οκτωβρίου 2016 Ένα ακόμα <td> με τα checkbox να πάρουν όλα το ίδιο όνομα πχ CkBoxes[] και κάθε ένα από αυτά θα έχει ως value το όνομα του αρχείου.
ekriksi Δημοσ. 4 Οκτωβρίου 2016 Μέλος Δημοσ. 4 Οκτωβρίου 2016 α οκ κάπως έτσι το σκεφτόμουν άλλα αυτό μετά θα ναι δυναμικό πχ θα εμφανίζεται ckeckbox με κάθε upload ενός αρχείου στον φάκελο??
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα