|
Если вы впервые на нашем форуме - ознакомьтесь с правилами
|
|
теперь такая проблема:
допустим есть две страницы, на первой 2 формы, сабмитится одна из них и экшн ее - 2 страница. днные из этой формы записываются в файл, а картинка отображает эти данные из него. проблема в следующем, при первом сабмите все нормально отображается, но если в броузере жмешь "назад", а потом сабмитишь другую форму, то отображаются те данные, которые были в прошлый раз, а если сделать рефреш страницы - то данные обновляются. в чем дело?
примерный код 1 стр:
<form name="form1" method="post" action="2.php">
<input type=checkbox name=name1[] value=4>
<input type=checkbox name=name1[] value=1>
</form>
<form name="form2" method="post" action="2.php">
<input type=checkbox name=name1[] value=5>
<input type=checkbox name=name1[] value=7>
</form>
<input type="button" name="Next1" value="Next" onClick="document.form1.submit();">
<input type="button" name="Next2" value="Next" onClick="document.form2.submit();">
код 2 стр:
$doc_root = $_SERVER['DOCUMENT_ROOT'];
$path = $_SERVER['PHP_SELF'];
$pos = strrpos($path, "/");
$dir = substr($path, 0, $pos);
$dir_name = $doc_root.$dir;
$tmpfname = $dir_name.'/data.dat';
$prescriber_data = array(
$checks = $_POST['name1'];
$fp = fopen($tmpfname, "w");
foreach ($checks as $val) {
fwrite($fp, $val."rn");
}
fclose($fp);
echo '<img src = "prescription_img.php">';
код картинки prescription_img.php:
<?php
$img_width = 2480;
$img_height = 3508;
$im = @imagecreate ($img_width, $img_height)
or die ("Cannot Initialize new GD image stream");
$white = imagecolorallocate ($im, 255, 255, 255);
$black = imagecolorallocate ($im, 0, 0, 0);
$y = 20;
$fd = fopen ("data.dat", "r");
while (!feof ($fd)) {
$buffer = fgetss($fd, 4096);
imagettftext ($im, 12, 0, 10, $y, $black, "C:/WINDOWS/Fonts/arial.ttf", "".$buffer."");
$y += 20;
}
fclose ($fd);
header ("Content-type: image/png");
imagepng ($im);
imagedestroy($im);
?>
|
|
24 января 2006, 07:25
|
|
Это сообщение было просмотрено: 4798 раз(а)
|
|