rename file in php with data from MySQL table

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

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

Απάντηση
mariospapa
Δημοσιεύσεις: 33
Εγγραφή: 01 Αύγ 2010 18:11

rename file in php with data from MySQL table

Δημοσίευση από mariospapa » 01 Αύγ 2010 18:18

Μήπως γνωρίζει κανείς πω μπορώ να μετονομάσω ένα αρχείο που ανέβηκε σε κάποιον server μέσω μιας φόρμας με filename που θα παίρνει τα δεδομένα από έναν ήδη αποθηκευμένο πίνακα σε MySQL;

δλδ. θέλω το εξής:
Με την εντολή rename της PHP να γράψω αυτό:

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

<?php
rename&#40;"/public_html/components/com_chronocontact/uploads/files/oldfilename.doc", "/public_html/components/com_chronocontact/uploads/files/newfilename.doc"&#41;;
?>
Όπου το newfilename θα είναι μία τιμή από ένα κελί ενός γνωστού πίνακα σε MySQL.
Πως θα συνδέσω το newfilename με την βάση δεδομένων ώστε να πάρει την τιμή που θέλω;

Ευχαριστώ εκ των προτέρων!

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

rename file in php with data from MySQL table

Δημοσίευση από mrpc » 01 Αύγ 2010 21:40

Σε ποιο σημείο ακριβώς δυσκολεύεσαι; στο να κάνεις το rename ή στο να τραβήξεις τα δεδομένα από τη βάση;
Αν τραβάς κανικά τα δεδομένα από τη βάση, ας πούμε ότι περνάς το filename σε μια μεταβλητή $newfilename.

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

<?php 
rename&#40;"/public_html/components/com_chronocontact/uploads/files/oldfilename.doc", "/public_html/components/com_chronocontact/uploads/files/".$newfilename&#41;; 
?>

mariospapa
Δημοσιεύσεις: 33
Εγγραφή: 01 Αύγ 2010 18:11

rename file in php with data from MySQL table

Δημοσίευση από mariospapa » 01 Αύγ 2010 23:24

mrpc έγραψε:Σε ποιο σημείο ακριβώς δυσκολεύεσαι; στο να κάνεις το rename ή στο να τραβήξεις τα δεδομένα από τη βάση;
Αν τραβάς κανικά τα δεδομένα από τη βάση, ας πούμε ότι περνάς το filename σε μια μεταβλητή $newfilename.

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

<?php 
rename&#40;"/public_html/components/com_chronocontact/uploads/files/oldfilename.doc", "/public_html/components/com_chronocontact/uploads/files/".$newfilename&#41;; 
?>
Στο να τραβήξω τα δεδομένα από την βάση! Την εντολή rename σε php νομίζω ότι την έχω σωστά γραμμένη. Δε μπορώ όμως να τραβήξω τα δεδομένα από την βάση και να τα αντιστοιχήσω στην μεταβλητή $newfilename που έγραψες.

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

rename file in php with data from MySQL table

Δημοσίευση από mrpc » 01 Αύγ 2010 23:36

Επειδή όμως δεν ξέρω πιο ακριβώς είναι το πρόβλημα σου στην ανάκτηση των δεδομένων, το μόνο που μπορώ να κάνω είναι να σε κατευθύνω σε σχετικό tutorial:
http://www.w3schools.com/PHP/php_mysql_select.asp

mariospapa
Δημοσιεύσεις: 33
Εγγραφή: 01 Αύγ 2010 18:11

rename file in php with data from MySQL table

Δημοσίευση από mariospapa » 01 Αύγ 2010 23:51

mrpc έγραψε:Επειδή όμως δεν ξέρω πιο ακριβώς είναι το πρόβλημα σου στην ανάκτηση των δεδομένων, το μόνο που μπορώ να κάνω είναι να σε κατευθύνω σε σχετικό tutorial:
http://www.w3schools.com/PHP/php_mysql_select.asp
Είναι πολύ απλό:
Έχω έναν πίνακα (jos_com_chronocontact_form1) σε μια βάση (joomla). Ο πίνακας έχει τις εξής στήλες: cf_id, name, surname, file. Τα πεδία αυτά γεμίζουν όταν υποβληθεί μια html form εκτός από το cd_id το οποίο δημιουργείται αυτόματα μετά την υποβολή της φόρμας. Αυτό που θέλω είναι το εξής:
Να αλλαχθεί το όνομα του αρχείου (είναι μορφής .doc) που ανεβάζει ο χρήστης από file.doc σε cf_id.doc. Σε αυτή την περίπτωση θα πρέπει να τρέξω ένα script μετά την υποβολή της φόρμας ώστε να τραβήξω το cf_id που δημιουργήθηκε κατά την υποβολή της φόρμας και να το χρησιμοποιήσω για να αλλάξω το όνομα του αρχείου που έγινε upload. Έτσι βρήκα την rename στην php, αλλά δε μπορώ να τραβήξω το cf_id από την βάση joomla και τον πίνακα jos_com_chronocontact_form1 που τον περιέχει.

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

rename file in php with data from MySQL table

Δημοσίευση από mrpc » 01 Αύγ 2010 23:57

Δηλαδή δεν ξέρεις ποιο id πέρασε στη βάση;
Αυτό μπορείς να το βρεις με την mysql_insert_id:
http://php.net/manual/en/function.mysql-insert-id.php

mariospapa
Δημοσιεύσεις: 33
Εγγραφή: 01 Αύγ 2010 18:11

rename file in php with data from MySQL table

Δημοσίευση από mariospapa » 02 Αύγ 2010 00:00

mrpc έγραψε:Δηλαδή δεν ξέρεις ποιο id πέρασε στη βάση;
Αυτό μπορείς να το βρεις με την mysql_insert_id:
http://php.net/manual/en/function.mysql-insert-id.php
Ok! Και ποια είναι ή σύνταξη του κώδικα για να αντιστοιχήσω το cf_id στην μεταβλητή $filename ώστε να μετονομάσω και το αρχείο μου; Αυτό ζητάω να μάθω.

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

rename file in php with data from MySQL table

Δημοσίευση από mrpc » 02 Αύγ 2010 00:04

Σου έδωσα το link του manual και με ρωτάς ποια είναι η σύνταξη;

mariospapa
Δημοσιεύσεις: 33
Εγγραφή: 01 Αύγ 2010 18:11

rename file in php with data from MySQL table

Δημοσίευση από mariospapa » 02 Αύγ 2010 00:22

mrpc έγραψε:Σου έδωσα το link του manual και με ρωτάς ποια είναι η σύνταξη;
Προφανώς, αφού δεν είμαι και τόσο εξοικειωμένος σε PHP και MySQL...

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

rename file in php with data from MySQL table

Δημοσίευση από mrpc » 02 Αύγ 2010 00:26

Λογικά κάτι σαν αυτό:

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

$filename = mysql_insert_id&#40;&#41;;
Δηλαδή ακριβώς ότι γράφει στο manual. Αν δεν είσαι εξοικειωμένος, το manual είναι ο καλύτερος σου φίλος. Για αυτό σε κατεύθυνα εκεί - και στο tutorial πιο πάνω.
Εκτός αν αυτό που θέλεις είναι απλά να σου δώσουμε έτοιμη τη λύση χωρίς να μάθεις πως δουλεύει.

mariospapa
Δημοσιεύσεις: 33
Εγγραφή: 01 Αύγ 2010 18:11

rename file in php with data from MySQL table

Δημοσίευση από mariospapa » 02 Αύγ 2010 00:37

mrpc έγραψε:Λογικά κάτι σαν αυτό:

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

$filename = mysql_insert_id&#40;&#41;;
Δηλαδή ακριβώς ότι γράφει στο manual. Αν δεν είσαι εξοικειωμένος, το manual είναι ο καλύτερος σου φίλος. Για αυτό σε κατεύθυνα εκεί - και στο tutorial πιο πάνω.
Εκτός αν αυτό που θέλεις είναι απλά να σου δώσουμε έτοιμη τη λύση χωρίς να μάθεις πως δουλεύει.
Είσαι μεγάλος παίκτης! Σ'ευχαριστώ πολύ! Δούλεψε μόνο με αυτό!

Απάντηση

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

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

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