Autor Zpráva
IdemeNaHavaj
Profil
warning in_array() expects parameter 2 to be array null given in .. on line

Vyhlasuje to tu:
<?php
$ovocie_get = mysql_real_escape_string($_GET['ovocie']);
$ovocie= explode(",", $ovocie_get);

.
.
.

                          if(
                          in_array("jablko", $ovocie) OR
                          in_array("hruska", $ovocie) OR
                          in_array("jahoda", $ovocie)
                          ){
                        ?>

Ak do URL adresy zadám napr.
http://example.com/?ovocie=jablko

tak to funguje, nepíše žiadny error

Ak nezadám nič, hlási to ten error vyššie.
Taps
Profil
IdemeNaHavaj:

<?
$ovocie
?>
musí být pole
logging
Profil *
měl by si testovat, zdali je to vubec pole is_array
jenikkozak
Profil
Tu část s prací s hodnotami z formuláře přidej (pomocí podmínky) pouze tehdy, pokud byl formulář odeslán.
IdemeNaHavaj
Profil
Taps:
pole myslíš čo? Ja to potrebujem ako Array, a zistiť či v tom Array-i je jedno z tých ovocií.


jenikkozak:
Nieje to vo formulári, je to niečo ako navigácia. Ak je v URL jedno z ovocí, zobrazí sa "dropdown"-menu s ovocím. Ak je tam zelenina, zobrazí sa zelenina.
Sú to klikacie odkazy, nie formulár.
Str4wberry
Profil
Reakce na IdemeNaHavaje:
Nejspíš jste zamlčel kód, ve kterém je problém. Uvedená ukázka by měla fungovat.

$ovocie= explode(",", $ovocie_get);
Vrátí vždy pole (byť prázdné), takže zmíněná chybová hláška (funkce in_array očekává pole, ale dostala null) nemůže nastat.

Řekl bych, že proměnná $ovocie vůbec není před zmíněnou podmínkou deklarována.
IdemeNaHavaj
Profil
Je to pravda, stačilo to obaliť podmienkou
if(is_array($ovocie))

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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