saavedra29 Δημοσ. 7 Δεκεμβρίου 2010 Δημοσ. 7 Δεκεμβρίου 2010 Παιδιά έχω ένα προβληματάκι. Έχω κάνει 2 αρχεία php για να κάνω download αρχεία από την mysql και θέλω να περάσω το $id σαν variable στο downloads.php για να δουλέψει. Αλλά δεν μπορώ με τίποτα, έχω κολλήσει.Το πρόβλημα είναι ότι το $id είναι μέσα σε δομή επανάληψης και δεν είναι σταθερό. Μπορείτε να βοηθήσετε; Παρακάτω είναι τα δύο php αρχεία: showRandomContants.php ><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf8"> </head> <body> <?php include "functions.php"; $sql = "SELECT * FROM uploaded_random ORDER BY f_name ASC"; $result = mysql_query($sql, $connect); $rows = mysql_num_rows($result); echo "<table>\n"; echo " <tr>\n"; echo " <td>Filename</td>\n"; echo " <td>Type</td>\n"; echo " <td>Size</td>\n"; echo " <td>Description</td>\n"; echo " <td> </td>\n"; echo " </tr>\n"; for ($i = 0; $i < $rows; $i++) { $data = mysql_fetch_object($result); echo " <tr>\n"; echo " <td>$data->f_name</td>\n"; echo " <td>$data->f_type</td>\n"; echo " <td>$data->f_size</td>\n"; echo " <td>" . stripslashes($data->text) . "</td>\n"; $id = $data->f_id; echo " <td>( <a href='download.php?=$id'>download</a> )</td>\n"; echo " </tr>\n"; } mysql_free_result($result); mysql_close($connect); ?> </body> </html> και downloads.php ><?php include "functions.php"; if ( $id ) { $sql = "SELECT temp , f_type, f_name, f_size FROM uploaded_random WHERE f_id = $id"; $result = @mysql_query($sql, $connect); $data = @mysql_result($result, 0, "temp"); $name = @mysql_result($result, 0, "f_name"); $size = @mysql_result($result, 0, "f_size"); $type = @mysql_result($result, 0, "f_type"); header("Content-type: $type"); header("Content-length: $size"); header("Content-Disposition: attachment; filename= $name"); header("Content-Description: PHP Generated Data"); echo $data; } else echo "no luck"; ?>
macabre_sunsets Δημοσ. 7 Δεκεμβρίου 2010 Δημοσ. 7 Δεκεμβρίου 2010 Το >echo " <td>( <a href='download.php?=$id'>download</a> )</td>\n"; δοκίμασε να το κάνεις >echo " <td>( <a href='download.php?id=$id'>download</a> )</td>\n"; Έπειτα στο downloads.php θα πρέπει να διαβάσεις αυτό το id δίνοντας >$id = $_REQUEST['id']; Στην συνέχεια μπορείς να κάνεις ότι ελέγχους θέλεις με το $id.
isay Δημοσ. 7 Δεκεμβρίου 2010 Δημοσ. 7 Δεκεμβρίου 2010 Στον τίτλο γράφεις Ανανέωση σελίδας αλλά ο κώδικας που παρέθεσες περιέχει μόνο link για να πας στην επόμενη σελίδα. Αν θες μόνο Link τότε κάνε τις παρακατω αλλαγες Στο αρχείο showRandomContants.php κανε την αλλαγη > echo " <td>( <a href='download.php?=$id'>download</a> )</td>\n"; σε > echo " <td>( <a href='download.php?did=$id'>download</a> )</td>\n"; και στο αρχείο downloads.php κανε την παρακάτω αλλαγή > if ( $id ) { σε > if (isset($_GET['did'])) { $id=$_GET['did']; EDIT: Με πρόλαβε ο macabre_sunsets
saavedra29 Δημοσ. 7 Δεκεμβρίου 2010 Μέλος Δημοσ. 7 Δεκεμβρίου 2010 Το >echo " <td>( <a href='download.php?=$id'>download</a> )</td>\n"; δοκίμασε να το κάνεις >echo " <td>( <a href='download.php?id=$id'>download</a> )</td>\n"; Έπειτα στο downloads.php θα πρέπει να διαβάσεις αυτό το id δίνοντας >$id = $_REQUEST['id']; Στην συνέχεια μπορείς να κάνεις ότι ελέγχους θέλεις με το $id. Ναι macabre_sunsets!!! Δύο μέρες παιδευόμουνα με αυτό το πράγμα. Είχα την εντύπωση πως μπορώ να πάρω την τιμή με κάποιο function αλλά'δεν ήξερα με πιο. Πρέπει να ρίξω διάβασμα, δεν το γλιτώνω... Ευχαριστώ για τη βοήθεια!
saavedra29 Δημοσ. 7 Δεκεμβρίου 2010 Μέλος Δημοσ. 7 Δεκεμβρίου 2010 Στον τίτλο γράφεις Ανανέωση σελίδας αλλά ο κώδικας που παρέθεσες περιέχει μόνο link για να πας στην επόμενη σελίδα. Αν θες μόνο Link τότε κάνε τις παρακατω αλλαγες Στο αρχείο showRandomContants.php κανε την αλλαγη > echo " <td>( <a href='download.php?=$id'>download</a> )</td>\n"; σε > echo " <td>( <a href='download.php?did=$id'>download</a> )</td>\n"; και στο αρχείο downloads.php κανε την παρακάτω αλλαγή > if ( $id ) { σε > if (isset($_GET['did'])) { $id=$_GET['did']; EDIT: Με πρόλαβε ο macabre_sunsets το echo " <td>( <a href='download.php?=$id'>download</a> )</td>\n"; είναι επειδή έκανα κάποιες δοκιμές. Θα δοκιμάσω και τον δικό σου τρόπο isay να δώ αν δουλέυει και αυτός..
saavedra29 Δημοσ. 7 Δεκεμβρίου 2010 Μέλος Δημοσ. 7 Δεκεμβρίου 2010 isay δουλέυει μια χαρά και με το isset! Βέβαια κάποια αρχεία δεν ανοίγουν, αλλά αυτό είναι αλλουνού παπά ευαγγέλλιο... Ευχαριστώ πολύ!
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.