command Find

Hi everybody just an answer..
I have a directory called temp which contains:
dancancell
dacancellare
danoncancellare.txt

and 2 directory:
1
2

1 contains:
dacan
dacancella
danoncanc
and a directory 2 that contains:
dacance

the first directory called 2 contains
dacancellare
danoncan

ok.If i launch the command

find ./temp -maxdepth 2  -name dacanc*

from the directory which contains temp the output is

./temp/2/dacancellare
./temp/dacancell
./temp/dacancellare
./temp/1/2/dacance
./temp/1/dacancella

and it is ok but if i launch the command

find ./ -maxdepth 2  -name dacanc*

from temp directory the output is

find: paths must precede expression: dacancellare
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]

why??

find ./temp -maxdepth 2  -name 'dacanc*'

thank you it works!
But why my version worked in the parent directory and didn't work in the temp directory?

Because dacanc* didn't expand to more than one file (either to exactly one or, if there were none, it remained unchanged as a single argument).