Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

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

Απάντηση
geotheod
Δημοσιεύσεις: 54
Εγγραφή: 19 Απρ 2005 13:12
Τοποθεσία: Αθήνα
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από geotheod » 07 Μαρ 2006 17:03

Γεια σας παιδια.

Πριν λίγο καιρό αρχίσα να ασχολούμαι με PHP kai MySQL με τη μελέτη κάποιων Tutorials. Όλα όμως μιλάνε για δημιουργία εγγραφών ή ονομάτων σε μία βάση δεδομένων αλλα πουθενά δεν βρήκα πως να ανεβάζω και να ανακτώ αρχεία π.χ Word, Excel, .zip κτλ απο μια βάση MySQL. Πώς να τα φορτώνω και να τα ανακτώ οποτε θέλω

Δηλαδή θέλω να μπορώ μέσω π.χ ενός link που θα πατάω να κατεβαίνει ένα αρχείο απο μία βάση.

Αν μπορεί κάποιος να με βοηθήσει θα του ήμουν υποχρεος...

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από lakritidis » 09 Μαρ 2006 19:49

To αρχείο του Word δεν αποτελεί μέρος της βάσης δεδομένων. Μπορεί όμως να είναι μέρος της βάσης η τοποθεσία ου αρχείου.

Για να κάνεις αυτό που θέλεις:
1. Ανεβάζεις το αρχείο στον server χρησιμοποιώντας κάποιο FTP client.
2. φτιάχνεις ένα πίνακα στη βάση δεδομένων στον οποίο θα έχεις τα εξής πεδία
download_id (PK/AI): Το κλειδί
download_title(varchar): Ένας τίτλος για το αρχείο
download_desc(varchar): Μία σύντομη περιγραφή για το αρχείο
download_url (varchar): Η τοποθεσία του αρχείου στο server.

3. Φτιάξε την ιστοσελίδα σου. Σε αυτή θα εμφανίζεις τον τίτλο και τη σύντομη περιγραφή. Τον τίτλο θα τον κάνεις link. Κάθε φορά που θα κάνει κάποιος κλικ πάνω του, θα τον παραπέμπεις στο download_url

geotheod
Δημοσιεύσεις: 54
Εγγραφή: 19 Απρ 2005 13:12
Τοποθεσία: Αθήνα
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από geotheod » 12 Μαρ 2006 00:57

Σε ευχαριστώ πάρα πολύ φίλε μου.. Να εισαι καλα!

Άβαταρ μέλους
softius
Script Master
Δημοσιεύσεις: 241
Εγγραφή: 11 Ιαν 2004 19:07
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από softius » 12 Μαρ 2006 13:07

lakritidis έγραψε:To αρχείο του Word δεν αποτελεί μέρος της βάσης δεδομένων. Μπορεί όμως να είναι μέρος της βάσης η τοποθεσία ου αρχείου.
Κι όμως, είναι δυνατή η αποθήκευση ολόκληρων αρχείων -- ανεξαρτήτα από τον τύπο τους Word, Excel, Images -- στην MySQL, όπως και στις πλείστες βάσεις δεδομένων. Ας μην ξεχνάμε πως ένα αρχείο δεν είναι τίποτα άλλο από binary data! Ο τύπος δεδομένων που αντιστοιχεί στα binary data είναι το BLOB.

Υπάρχει ένα ενδιαφέρον άρθρο, το οποίο περιγράφει αναλυτικά πως μπορείς να αποθηκεύσεις αλλά και να ανακτήσεις ένα αρχείο από την MySQL, χρησιμοποιώντας φυσικά PHP. Αν το ψάξεις περισσότερο στο google, σίγουρα θα βρεις κι άλλα πολλά!

geotheod
Δημοσιεύσεις: 54
Εγγραφή: 19 Απρ 2005 13:12
Τοποθεσία: Αθήνα
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από geotheod » 13 Ιουν 2006 19:54

Τελικά δεν κατάφερα να ανεβάσω τα αρχεία μου στη βάση δεδομένων SQL και αναζητώ κάποιο πιο ευκολο τρόπο αν γίνεται..

Βασικά το site το έχω κάνει με PHP και MySQL αλλα το κομμάτιόπου θα βάλω το downloading area με προβληματίζει. Δεν καταφέρνω
να το κάνω και ψάχνω αλλους ευκολότερους τρόπους.. Καμμια ιδέα κανείς;;

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από Banavas » 13 Ιουν 2006 23:50

geotheod έγραψε:Τελικά δεν κατάφερα να ανεβάσω τα αρχεία μου στη βάση δεδομένων SQL και αναζητώ κάποιο πιο ευκολο τρόπο αν γίνεται..

Βασικά το site το έχω κάνει με PHP και MySQL αλλα το κομμάτιόπου θα βάλω το downloading area με προβληματίζει. Δεν καταφέρνω
να το κάνω και ψάχνω αλλους ευκολότερους τρόπους.. Καμμια ιδέα κανείς;;
www.hotscripts.com Ο παράδεισος της PHP.
Ψάξε για script διαχείρισης αρχείων (download manager).
Αφού βρεις κάτι που να σου ταιριάζει προσπάθησε να το πειράξεις για να το κάνεις στα μέτρα σου. Το καλύτερο φροντιστήριο για την εκμάθηση PHP.

Mάρκος

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Φόρτωμα αρχείων σε βάση και ανάκτηση αυτών

Δημοσίευση από cpulse » 14 Ιουν 2006 10:49

Το άρθρο http://www.php-mysql-tutorial.com/php-mysql-upload.php που ανέφερε ο softius πιο πάνω είναι ολοκληρωμένο πιστεύω..

Το θέμα όμως είναι να σκεφτείς αν αξίζει να βάλεις ένα αρχείο μέσα σε βάση. Κάποτε κι εγώ ήθελα τέτοια πράγματα μέχρι που συνειδητοποίησα οτι το file system είναι ουσιαστικά κι αυτό βάση δεδομένων optimized για αρχεία. Πιστεύω το ποιο σοφό είναι αυτό που είπε ο lakritidis, να έχεις τα αρχεία σε κανονική μορφή και στην βάση να έχεις απλά τα links.

Αν θες να προστατέψεις τα αρχεία από free download, τότε ή βάλε τα σε κάποιο directory εκτός πρόσβασης από HTTP ή σε κάποιο protected directory (μέσω .htaccess), και φτιάξε ένα script να τα στέλνει στον χρήστη (δες τα παραδείγματα του fpassthru() από το php.net).

Απάντηση

Επιστροφή στο “MySQL”

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

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