Dobrý deň, chcel by som sa s vami podeliť o môj problém...vytvoril som si vlastnú stránku, test.php. Obsahuje jedno textové políčko <input>. Pomocou php som sa snažil získať priamo na danej stránke jeho value a pomocou príkazu echo ho vypísať. Pridávam zdrojový kód:
test.php
--------------------------
<head><title>TEST</title></head>
<body>
<input type="text" id="test" name="test" value="text">
<?
$val = $_POST['test'];
if(!$val){
die("Error");
}
echo "($val)";
?>
</body>
--------------------------
Skúšal som namiesto $_POST napísať $_GET, bez účinku. Stránka naďalej vykreslí HTML a správu Error.
Prosím vás o radu, čo mám v tomto kóde chybne?
V první řadě vysvětlení problém: Aby PHP skript něco zobrazil, musí dostat nějaké data na vstupu; a to buď GET nebo POST metodou. (A ty mu žádné takové vstupní hodnoty neposíláš).
Co by měl tvůj skript vůbec dělat? Pokud chceš v reálném čase "opisovat" text z inputu do stránky, potřebuješ Javascript, ne PHP. Pokud chceš (na serveru) zpracovávat text, který na stránce někdo vyplnil, postupuješ správně, ale chybí ti zabalení vstupních hodnot do formuláře -- http://www.jakpsatweb.cz/formulare.html
Na závěr jedna drobnost: Používej raději dlouhý zápis pro začátek PHP skriptu jako <?php, vyhneš se tak do budoucna případným komplikacím v situacích, kdy bys potřeboval pracovat s hlavičkou XML.
Ďakujem za radu, skúsim tento problém vyriešiť pomocou JS :)
Mimochodem, máš tam chybu, přez $_POST ani $_GET ti to nejde, jelikož to tam nemáš zadané... Jednu chybu tam máš, a to v <input>u... Oprava:
<head><title>TEST</title></head>
<body>
<form method="post"> <!-- A nebo method="get" záleží co máš v php scriptě -->
<input type="text" id="test" name="test" value="text">
</form>
<?
$val = $_POST['test'];
if(!$val){
die("Error");
}
echo "($val)";
?>
</body>