Autor Zpráva
Mar
Profil
potrebuji poradit, mam stranku abc.php na ktere generuji dalsi stranku......
  
  $COK = 123;

  $text = "<html> \n";
  $text = $text."<head> \n";
  $text = $text."<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\"> \n";
  $text = $text."<meta http-equiv=\"refresh\" content=\"0;url=..../bbb.php?ID=$COK\"> \n";
  $text = $text."</head> \n";
  $text = $text."<body> \n";
  $text = $text."</body> \n";
  $text = $text."</html> \n";

  $file = "bbb-files/".$COK.".html";
  $soubor = fopen($file, "w+");
  fwrite($soubor, $text);
  fclose($soubor);
  

$soubor = $file;

header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"$soubor\"");

readfile ($soubor); 


soubor se v poradku vytvori, je na serveru ale pokud ho chce klient stahnout, tak se stahne ten vygenerovany soubor, ale do nej se jeste vlozi HTML kod stranky abc.php .Nevite nekdo, co s tim??
Exitus
Profil *
Zkus dát za funkci readfile ještě funkci
exit;
Mar
Profil
nic......
Exitus
Profil *
Hoď sem celý obsah souboru abc.php. Já bych za funkci readfile už žádný kód nevkládal a na abc.php bych odkazoval z jiné stránky. Nebo z totožné, ale jako na třeba abc.php?action=download a kód co jsi zveřejnil bych uzavřel do podmínky
if ($_GET['action'] == 'download') {
//tvůj kód
exit;
} ?>

Tak to funguje na stránce mě.
Mar
Profil
vsak je to cely zalozeny na stisknuti tlacitka/odesilani formulare

na strance abc.php je pouze toto:

<?
if (isset($_POST["hiddenSENT2"])) {
  $COK = $_COOKIE["promenna"];

  $text = "<html> \n";
  $text = $text."<head> \n";
  $text = $text."<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\"> \n";
  $text = $text."<meta http-equiv=\"refresh\" content=\"0;url=..../bbb.php?ID=$COK\"> \n";
  $text = $text."</head> \n";
  $text = $text."<body> \n";
  $text = $text."</body> \n";
  $text = $text."</html> \n";

  $file = "bbb-files/".$COK.".html";
  $soubor = fopen($file, "w+");
  fwrite($soubor, $text);
  fclose($soubor);
  

$soubor = $file;

header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"$soubor\"");

readfile ($soubor); 
}
?>

<form name="Form2" method="post" id="Form2">
  <input type="hidden" name="hiddenSENT2" value="">
  <input type="submit" id="ButtonDELETEALL" name="Button1" value="Uložit">
</form>



na strance bbb.php se ziskava pouze promenna z GET
<?
$IDkose = $_GET["ID"];
echo $IDkose ;
?>


to je vše

Moderátor Majkl578: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
Majkl578
Profil
Zkus to takto, upravil jsem ještě pár věcí.

<?php
if (isset($_POST["hiddenSENT2"])) {
	$COK = $_COOKIE["promenna"];

	$text = "<html> \n";
	$text .= "<head> \n";
	$text .= "<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\"> \n";
	$text .= "<meta http-equiv=\"refresh\" content=\"0;url=..../bbb.php?ID=$COK\"> \n";
	$text .= "</head> \n";
	$text .= "<body> \n";
	$text .= "</body> \n";
	$text .= "</html> \n";

	$file = "bbb-files/$COK.html";
	file_put_contents($file, $text);
	
	header('Content-Description: File Transfer');
	header('Content-Type: application/force-download');
	header('Content-Disposition: attachment; filename="' . basename($file) . '"');

	readfile($file);
	exit; //ukončí script, aby se nevypsal formulář
}
?>

<form name="Form2" method="post" id="Form2">
	<input type="hidden" name="hiddenSENT2" value="">
	<input type="submit" id="ButtonDELETEALL" name="Button1" value="Uložit">
</form>

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: