ahoj učím se OOP a zajímal by význam hlášky
Notice: Use of undefined constant Karel - assumed 'Karel' in C:\wamp\www\oop\index.php on line 18
jedná se o něco jako jako nevužitou proměnnou nebo o co????
jedná se o něco jako jako nevužitou proměnnou nebo o co????
Ne, jedná se o nedefinovanou konstantu, jak to hlášení napovídá... Pravděpodobně jsi nechtěl použít konstantu, ale napsal jsi něco, co se tak jeví. Třeba $pole[Karel], místo $pole['Karel'].
jo už to vidí díky ještě mám jeden prblém u constructoru
public function __construct($jmeno, $prijmeni, $vek)
{
$this->jmeno = $jmeno;
$this->prijmeni = $prijmeni;
$this->vek = $vek;
}
tato cast se jevi ze je ok ale jakmile ji volam
if(isset($_POST['go'])) {
if(is_numeric($_POST['age'])) {
$jan = new Clovek($_POST['name'] .','. $_POST['surname'] .','. $_POST['age']);
$jan->pozdrav();
} else {
echo('Zadaná hodnota musí být číslo');
}
}
tak mi to vypise toto
Warning: Missing argument 2 for Clovek::__construct(), called in C:\wamp\www\oop\index.php on line 19 and defined in C:\wamp\www\oop\Tridy\Clovek.php on line 15
Warning: Missing argument 3 for Clovek::__construct(), called in C:\wamp\www\oop\index.php on line 19 and defined in C:\wamp\www\oop\Tridy\Clovek.php on line 15
ale pokud napisu
$osoba= new Clovek('Karel', 'Novák', 30);
tak je to v pohode
"Missing argument 2" "3"
http://translate.google.com -> Chybějící argument
Co ti na tom neni jako jasne? Funkce ma 3 argumenty, kdyz 2 z nich nezadas, vypise se tato hlaska.
$jan = new Clovek($_POST['name'] .','. $_POST['surname'] .','. $_POST['age']);
To muzes napsat take jako:
$str = $_POST['name'] .','. $_POST['surname'] .','. $_POST['age'];
echo $str;
$jan = new Clovek($str); // coz je jeden argument a dalsi 2 tam nejsou.
Kdezto tvuj druhy priklad...
$osoba= new Clovek('Karel', 'Novák', 30);
To muzes taky napsat jako:
$str1 = 'Karel';
$str2 = 'Novak';
$int1 = 30;
$osoba= new Clovek($str1, $str2, $int1); // 3 argumenty, zadna chyba
Blik? Porad nic? Pouzil jsi spojeni do retezce (stringu) misto oddeleni carkami :)
jo to s tema argumentama sem pobral ale nedochzelo mi proc to ty ostatni dva nepobira puvodne sem tam mel totiz chybu mel sem totiz
$jan = new Clovek($_POST['name'], $_POST['surname']), $_POST['age'];
a diky te blbe umistene zavorce mi to hazelo chybu tak sem to pak pospojoval tema teckama
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku