Προς το περιεχόμενο

Ανανέωση της σελίδας php πώς περναω το id σελίδας στην ίδια σελίδα σαν μεταβλητή;


saavedra29

Προτεινόμενες αναρτήσεις

Δημοσ.

Παιδιά έχω ένα προβληματάκι.

 

Έχω κάνει 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";

?> 

Δημοσ.

Το

>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.

Δημοσ.

Στον τίτλο γράφεις Ανανέωση σελίδας αλλά ο κώδικας που παρέθεσες περιέχει μόνο 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";

δοκίμασε να το κάνεις

>echo "  <td>( <a href='download.php?id=$id'>download</a> )</td>\n";

 

Έπειτα στο downloads.php θα πρέπει να διαβάσεις αυτό το id δίνοντας

>$id = $_REQUEST['id'];

 

Στην συνέχεια μπορείς να κάνεις ότι ελέγχους θέλεις με το $id.

 

Ναι macabre_sunsets!!! Δύο μέρες παιδευόμουνα με αυτό το πράγμα. Είχα την εντύπωση πως μπορώ να πάρω την τιμή με κάποιο function αλλά'δεν ήξερα με πιο.

Πρέπει να ρίξω διάβασμα, δεν το γλιτώνω...

Ευχαριστώ για τη βοήθεια!

Δημοσ.

Στον τίτλο γράφεις Ανανέωση σελίδας αλλά ο κώδικας που παρέθεσες περιέχει μόνο 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 να δώ αν δουλέυει και αυτός..

Δημοσ.

isay δουλέυει μια χαρά και με το isset! Βέβαια κάποια αρχεία δεν ανοίγουν, αλλά αυτό είναι αλλουνού παπά ευαγγέλλιο... :)

Ευχαριστώ πολύ!

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...