Autor Zpráva
Venushja
Profil
Zdravim mam takovy problem po Nainstaloval sem si EasyPhP a pri pouzivani php prikazu mi to nefunguje teda
pokud zadam jednoduche prikazy jako napr: <?php echo"Ahoj"; ?> tak to problem nedela ale pokud uz tam dam
<?php
if($a==""){
......
}else{
.....
};
?>

tak uz mi to nevezme a ukazuje to chybu
Notice: Undefined variable: ahoj in C:\Web\Zkouska\index.php on line 5
Ale tamto ostatni funguje nevite co s tim?
MCKAY
Profil
Venushja:
Divíš se? Když tu proměnnou nikde nedefinuješ, nemůžeš ji tam použít. Kód vkládej mezi , je to potom přehlednější.

Aby jsi tu proměnnou mohla použít, musíš ji o kousek výše definovat. Lepší by bylo otestovat, jestli existuje:

<?php 
if(isset($a)){ 
echo "existuje";
}else{ 
echo "neexistuje";
}
?>
PetrM
Profil *
A co ten škaredý středník
<?php 
if(isset($a)){ 
echo "existuje";
}else{ 
echo "neexistuje";
}; 
?>
MCKAY
Profil
PetrM:
Pardón, to mám za to, že celý den někoho opravuju :-), chyba opravena.

// zkopiroval a přepsal jsem ten kód, co poskytl Venushja, takže jsem si nevšiml
Venushja
Profil
Se divim todle funguje kdyz tam neni tak neexistuje a obracene ale proste nevim co s tim kdyz
tam mam jako kdyz chci aby se nejdriv ukazala stranka s 1 a po odeslani inputu aby to hodilo jakoby do else pres web my funguje tento kod v pohode
<?php
if($a==""){
echo"
<form>
<input type='text' name='a'>
<input type='submit' value='odesli!>";
}else{
echo"$a";
};
?> 

na strankach s internetem to funguje nomrlane ale v tom EasyPHP me to nefaka a hazi to error co s tim?
MCKAY
Profil
Venushja:
Vyjadřuješ se trochu chaoticky :-), zkus to prosím upřesnit, důležité je, aby jak na tom EasyPHP tak i na internetu byl stejný soubor, a aby proměnná $a existovala, je také dost možné, že server má vypnuté tzv. poznámky (notice), a to EasyPhp ne.
Venushja
Profil
No uz to asi funguje sem neco zmenil v php.ini a uz to funguje ale ty notice me tam fakt stvou nejdou nejak vypnout ?
MCKAY
Profil
Venushja:
Samozřejmě, že jde. Od čehopak je asi google? :-)
Davex
Profil
Venushja:
Zapnutí register_globals v php.ini nebo vypnutí chybových hlášek, ale nic nemění na tom, že je uvedený kód blbě. Při získávání hodnoty pole z formuláře používej superglobální pole $_GET, kontroluj přítomnost proměnné přes isset a řetězec získaný od uživatele ošetři při výpisu funkcí htmlspecialchars():
<?php 
if (isset($_GET['a']) && $_GET['a']!=''){ 
  echo htmlspecialchars($_GET['a']);
} else { 
  ...
}
?>
Venushja
Profil
Fakt diky moc jste mi vsichni pomohli konecne muzu delat php i kdyz nebude pristup k netu...
PS:Mam otazku proc EasyPHP bere jenom <?php a nebere <? ?
MCKAY
Profil
Venushja:
To je opět jen o konfiguraci tady si najdi na stránce "short_open_tag" a nastav si to podle toho defaultu (1).
Venushja
Profil
Diky moc tedka to je presne podle mych predstav ... Diky moc

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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