![]() |
Frage zu PHP/HTML
Also, mit PHP und HTML habe ich eigentlich NICHTs zu tun, deswegen, denke ich, wird mein Problem für euch lachhaft sein..
Über folgenden Code lasse ich Daten aus der SQL-DB anzeigen:
Code:
Wenn ich mit der Maus über den Link fahre bekomme ich folgendes angezeigt:
<?php
$cat = $_GET[cat]; $abfrage = "SELECT * FROM downloads WHERE Kategorie = '$cat'"; $ergebnis = mysql_query($abfrage); while($row = mysql_fetch_object($ergebnis)) { echo ' <table class="tablesolid" width="100%" border="0"> <tr> <td>[b]Betriebssysteme:[/b]</td> <td>'.$row->Systeme.'</td> </tr> <tr> <td>[b]Version:[/b]</td> <td>'.$row->Version.'</td> </tr> <!--<tr> <td>[b]Download[/b]</td> <td>[url="'.$row->Link.'"]Link[/url] </td> </tr>--> <tr> <td>[b]Link[/b]</td> <td> <1-- Ab hier das Problem --> [url="./?p=dloads&cat='.$_GET[cat].'&file='.$row->id.'"]Link[/url]</td> <td align="right" width=20%"> </td> </tr> </table> <div style="margin-bottom: 1px;"></div>'; $file = $_GET['file']; if (isset($file)) // Leere sql-Abfrage abfangen (HÄSSLICHER Fehler sonst!) { $id = $_GET['file']; $result = mysql_query("SELECT Link FROM downloads WHERE id = $id"); $filename = mysql_result($result, 0); // Dateiname aus der DB holen echo '<meta http-equiv="refresh" content="1; URL='.$filename.'">'; } } ?>
Code:
Weiter unten im Code frage ich die id der variablen "file" ab, suche via WHERE in der DB
http://localhost/?p=dloads&cat=edit&file=1
nach dem Link der dort hinterlegt ist und navigiere ihn an:
Code:
Das Problem:
<meta http-equiv="refresh" content="1; URL='.$filename.'">'
Man sollte den Link aus der DB nicht sehen können, ich bekomme es aber nicht anders hin :( |
Re: Frage zu PHP/HTML
Öffne die Datei und übertrage sie als Stream an den Browser.
|
Re: Frage zu PHP/HTML
Nunja, wie gesagt, normalerweise habe ich nichts mit den Sprache zu schaffen, daher weis ich absolut nicht was du meinst.
Edit: Das mit den Streams könnte u.U. nicht funktionieren, da die maximale Größe von Server zu Server unterschiedlich ist. |
Re: Frage zu PHP/HTML
Code:
$fh = fopen ( $filename "rb");
$datei .= fread( $fh, filesize( $filename)); fclose( $fh); echo $datei; |
Re: Frage zu PHP/HTML
Soweit verstehe ich diesen Code schon, nur leider funktioniert es nicht :(
|
Re: Frage zu PHP/HTML
Was heisst geht nicht?
|
Re: Frage zu PHP/HTML
Einfach wie bei einem Downloadscript:
![]() Du mußt aber aufpassen, daß es sonst keine weiteren Ausgaben gibt ... darf also kein HTML-Code vom Script gesendet werden. z.B.
Code:
// $filename = {Wert aus Datenbank}
@header('Content-Type: image/gif', true); @header('Content-Length: ' . filesize($filename)); readfile($filename); exit; |
Re: Frage zu PHP/HTML
Zum Link: Keine Ahnung wie ich das benutzen soll...
|
Re: Frage zu PHP/HTML
etwa so (ungetestet)
$filename muß der serverinterne Pfad zur Datei sein
Code:
<?php
$cat = $_GET[cat]; $file = $_GET['file']; $abfrage = "SELECT * FROM downloads WHERE Kategorie = '$cat'"; $ergebnis = mysql_query($abfrage); if (isset($file)) { $result = mysql_query("SELECT Link FROM downloads WHERE id = $file"); $filename = mysql_result($result, 0); // Dateiname aus der DB holen //@header('Content-Type: image/gif', true); @header('Content-Length: ' . filesize($filename)); readfile($filename); exit; } while($row = mysql_fetch_object($ergebnis)) { echo ' <table class="tablesolid" width="100%" border="0"> <tr> <td>[b]Betriebssysteme:[/b]</td> <td>'.$row->Systeme.'</td> </tr> <tr> <td>[b]Version:[/b]</td> <td>'.$row->Version.'</td> </tr> <!--<tr> <td>[b]Download[/b]</td> <td>[url="'.$row->Link.'"]Link[/url] </td> </tr>--> <tr> <td>[b]Link[/b]</td> <td> <1-- Ab hier das Problem --> [url="./?p=dloads&cat='.$_GET[cat].'&file='.$row->id.'"]Link[/url]</td> <td align="right" width=20%"> </td> </tr> </table> <div style="margin-bottom: 1px;"></div>'; } ?> |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz