Ahojte!
Tento script na odovzdanie premennej z formulara do php mi na webzdarma funguje v pohode ale doma nie. V com je pricina?
Obsah test.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<body>
<form action="test.php" method="post">
<input type="text" name="testuser" size="10" maxlength="10" />
<input type="submit" value=" OK " />
</form>
</body>
Obsah test.php
<?
echo "<body><p><center>$testuser</center></p></body>";
?>
test.php mi doma pise, ze premenna testuser nie je definovana (napriek tomu, ze som do nej v test.html jasne napisal hodnotu).
Nainstalovane mam easyphp 1.7. Obsahuje to Apache 1.3.27 a PHP 4.3.3. Nainstalovane je to na Win NT 4.0, service pack 6A (posledny), ceska verzia.
Inac mi tam php aj mysql chodi. Skusal som to s MSIE 5.0 a Mozillou 1.5, nechodi to ani s jednym.
Doplnok: ten skriptik som napisal iba ako demonstraciu.
V skutocnosti mi nefunguje script admin.html z phpRS 2.3.5. Ale princip je ten isty.
odpovedam si sam: asi mam register_globals=off, takze to bude pricina
Myslím si že zásadní chyba je mít soubor s příponou .html
Takže to zkus přejmenovat na "test.php" a dej do něho jak formulář, tak i script a přidej si tam do formuláře skrytej prvek:
<input type=hidden name="Odeslano" value="ano">
a dej script do podmínky:
if($Odeslano == "ano"):
bla, bla, bla
endif;
_____________
Petr
Petr: mit PHP kod v .html souboru nemusi byt chyba, zalezi na nastaveni Apache
Martt: Register Globals muze klidne nechat na off, kod prepis na
<?
echo "<body><p><center>".$_POST['testuser']."</center></p></body>";
?>
alebo si daj na zaciatok
@extract($_GET);
resp.
@extract($_POST);
to ti vyextrahuje vsetky premenne v tychto poliach