substr() expects parameter 1 to be string, object given
- kasparek
- Člen | 43
Ahoj,
když si vybírám poslední záznam z db a ten bych chtěl předhodit funkci
substr()
, tak mi to vyhodí chybu
substr() expects parameter 1 to be string, object given
o co jde?
Je dotaz ve špatném tvaru?
kód :
$result = $this->database->table('messages')->select('number')->order('number DESC')->limit(1);
$year = substr($result,3,4);
if($year != date('Y')) {
$count = 0;
} else {
$count = substr($number,7,4);
}
$this->number = 'UPZ'.date('Y').printf("%04s",((int)$count)+1);
díky za rady
- David Matějka
- Moderator | 6445
v $result
je objekt Selection, zavolej
->fetch()
, coz ti vrati konkretni radek a
->number
, coz ti vrati tu hodnotu
takze
$year = substr($result->fetch()->number, 3, 4);
- kasparek
- Člen | 43
matej21 napsal(a):
v
$result
je objekt Selection, zavolej->fetch()
, coz ti vrati konkretni radek a->number
, coz ti vrati tu hodnotu
takze$year = substr($result->fetch()->number, 3, 4);
jj to už mi vrátí požadovanou hodnotu $year
ale teď mi to
píše Trying to get property of non-object
u $count
,
když použiju to
samý $count = substr($result->fetch()->number,7,4);
Editoval kasparek (31. 5. 2014 0:54)
- David Matějka
- Moderator | 6445
snazi se to ziskat z resultu dalsi vysledek, ktery tam jiz neni. takze si ten row z fetch, pripadne rovnou ten number, uloz do promenny
- kasparek
- Člen | 43
matej21 napsal(a):
snazi se to ziskat z resultu dalsi vysledek, ktery tam jiz neni. takze si ten row z fetch, pripadne rovnou ten number, uloz do promenny
jop už mi to funguje :) do proměný jsem si to dal protože jsem si pak
říkal že je to asi i lepší a hlavně kratší zápis, jenže mi to pak
vyhazovalo nějakou chybu s odesíláním hlavičky a pak jsem si všimnul, že
používám
$this->number = 'UPZ'.date('Y').printf("%04s",((int)$count)+1);
a měl jsem
použít $this->number = 'UPZ'.date('Y').sprintf("%04s",((int)$count)+1);
ale moc díky za rady ;)
Editoval kasparek (31. 5. 2014 1:36)