Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 00:48 Der er 11 kommentarer og
2 løsninger

Åben link i nyt vindue, hvis variabel = 0

Her i koden skulle:

if (!$data['directurl']) {
header('Location: '.$data['url']);
  exit;
}

Gerne åbne 'url' i et nyt vindue, hvis directurl=0. Derimod, hvis directurl=1 skal resten af koden eksekveres. Men det virker kun, hvis directurl=1. Hvorfor?

Her er hele koden:

<?
require('header0.php');

$fileid = $_REQUEST["fileid"];
$sql = "SELECT url, directurl FROM dlc_files WHERE id=$fileid";
$result = mysql_query($sql) or die(myslq_error());
$data = mysql_fetch_array($result);

if (!$data) httperror(404);

if (!$data['directurl']) {
header('Location: '.$data['url']);
  exit;
}

require('header1.php');
echo '<meta HTTP-EQUIV="Refresh" CONTENT="2;URL='.htmlspecialchars($data['url']).'" />
';
require('header.php');


echo '<img src="/images/download.gif" width="42" height="" alt="48" style="float: right;" />
<p><strong>Din computer skulle automatisk gå igang med at downloade indenfor ca. 10 sekunder.</strong></p>

<p>Hvis du har problemer, kan du prøve dette link: <a href="'.htmlspecialchars($data['url']).'">Download</a></p>

<p> Tak for at du valgte at bruge Download Central.dk</strong></p>';

$html = getFileDisplay( $fileid, true);



if ($html===false) {
  // TODO vis fejlmeddelelse, filen findes ikke.
} else {
 
  echo $html;
}

require('screenshots.php');
require('footer.php');
?>
Avatar billede roenving Novice
06. april 2004 - 01:16 #1
Hvad med:

if ($data['directurl']==0) {
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 01:21 #2
Problemet med det er at sætter jeg den =0, som den skal være kommer der en fejl i linien: header('Location: '.$data['url']); når directurl=0. Sætter jeg den som du siger ==0 kommer fejlen når directurl=1.
Avatar billede roenving Novice
06. april 2004 - 01:24 #3
<?
$fileid = $_REQUEST["fileid"];
$sql = "SELECT url, directurl FROM dlc_files WHERE id=$fileid";
$result = mysql_query($sql) or die(myslq_error());
$data = mysql_fetch_array($result);

if (!$data) httperror(404);

if ($data['directurl']==0) {
header('Location: '.$data['url']);
  exit;
}

require('header0.php');
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 01:28 #4
Sætter jeg det ind er der fejl på: $result = mysql_query($sql) or die(myslq_error());

-Det skal lige siges jeg ikke er vild til PHP.
Avatar billede roenving Novice
06. april 2004 - 01:30 #5
Så har du noget i din header0.php som du skal have skilt op ...

Et simpelt gæt vil være at du har din database-connect og noget grundlæggende header og start af html-kode i den, det skal du skille ad, så database-connecten udføres før (hvor den stod før !-) og det øvrige udføres efter (der hvor jeg placerede den ... )
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 01:34 #6
Damn nu virker det, du ved ikke hvor glad jeg er! :) :) :)
Jeg manglede database.php.

Nu mangler jeg bare at er directurl=0 skal det åbnes i _blank.. men hvordan?
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 01:38 #7
Btw så virker du til at være ret vild til php, så hvis du havde tid måtte du også meget gerne se om http://www.eksperten.dk/spm/485425 er noget du lige hurtigt kunne give mig et tip om. Og tryk "svar", så kan jeg give dig points :).
Avatar billede roenving Novice
06. april 2004 - 01:51 #8
Du kan ikke serverside bestemme, om der skal åbnes et nyt vindue, det er kun muligt ved at der client-side er target="_blank" ...

-- men du kan selvfølgelig sende en kode, som åbner et nyt vindue, men det lyder ikke som en god idé, for det vil slette det vindue, som sendte til dit script ...

-- kan du ikke lave din liste, så din download-side ved, om der skal åbnes i nyt vindue eller ej ?-)

-- og i modsætning til det du skriver, kan jeg ikke en halv meter php, så dit problem i 485425 kan jeg ikke gennemskue !-)
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 01:54 #9
Okay, tak. Jeg vil prøve mig frem, men som sagt er jeg heller ikke vild til php, men det hjælper da på det.

Vil du ikke have points?
Avatar billede roenving Novice
06. april 2004 - 02:48 #10
Jo, da, men f***** da ikke 200 !-)

Hvis du selv tager langt de fleste, vil jeg da godt have lidt af de resterende !-)

Men du skal så selv lægge et svar og fordele ved hjælp af Avanceret !o]

-- og velbekomme '-)
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 02:50 #11
Hehe, jeg ville med glæde give 1000 point for hver af de par php-problemer jeg har tilbage :) Endnu en gang tak!
Avatar billede roenving Novice
06. april 2004 - 02:55 #12
-- jeg takker for points, og måske en dag jeg kan hjælpe dig mere, end med denne slags logiske/principielle problemer ;~}
Avatar billede downloadcentral.dk Nybegynder
06. april 2004 - 02:56 #13
Jow tark :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester