Diskuze: Podmínka při odeslání formuláře
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Ověř, zda je jeden formulář null a když ano, tak vezmi data z druhého. Když budou oba null nebo naopak ani jeden nebude null vyhoď vyjímku.
<?php
$phoneid = $_POST['phoneid'];
$phoneid2 = $_POST['phoneid2'];
if($phoneid != null && $phoneid2 = null) {
try {
...
}
catch(exception $e) {
$message = $e->getMessage();
}
}
V php moc nedělám, tak nevím, jestli je syntaxe dobře, ale snad tě to nasměruje trochu.
On, to, co pises je uplne nesmysl. To uz jasne vidis i z dokumentace, ze tam
nemas $ a nejake dalsi veci.
google = php conditions
https://www.php.net/….logical.php
$a nebo $b
$a || $b
$a!='' || $b!=''
// par dalsich tipu, co bys tam mel asi uz mit, ale...
isset() // zjistuje, zda existuje promena, pr $a = isset($_POST['phoneid']) ? $_POST['phoneid'] : ''
strlen()>0 // zjituje, zda delka stringu neni neluva
trim() // odrezava ze zacatku a z konce mezery
preg_replace() // nebo bych nahradil v cisle vse, co neni cislo [^0-9]+ nebo \D+
Cekal bych, ze tam budes mit neco takoveho:
if ($a=='')
{/*...*/}
elseif ($b=='')
{/*...*/}
else
{echo "chyba, oba stringy jsou prazdne"}
Nebo, ty to ches vlastne opacne...
if ($a!='' && $b!='')
{echo "Může být vyplněno pouze jedno číslo";}
A mozna jeste pozn.
$podminka and $podminka, true/false AND true/false
$cislo and $cislo, 00001010b AND 00001111b = 00001010b
Takze si davej bacha, zda pracujes opravdu s boolean true/false nebo cisly,
protoze vysledky muzou byt jine.
"\t"!=""===true - pokud treba string netrimujes od mezer, tabelatoru, tak je
vysledek te podminky opacny
" "!=""===true
""!=""===false
Jakoze tam uzivatel muze zapomenout mezeru.
Zobrazeno 5 zpráv z 5.