Edited: Let's suppose that $o(a)=p$ and $o(b)=q$. For every $x\in G$, we can find $m, n\in \mathbb{Z}$ such that $x=a^m=b^n$. So,
$$x^p=(b^n)^p=(a^m)^p=(a^p)^m=e^m=e \Rightarrow q\mid p,$$ $$x^q=(a^m)^q=(b^n)^q=(a^q)^n=e^n=e \Rightarrow p\mid q.$$
Hence $p=q$.
Another I thought is to prove that $f:[a] \rightarrow [b] $ defined by $f(a^k) =b^k$ is an isomorphism. In fact, $f$ is $1-1$ because
$$f(a^{k_1})=f(a^{k_2}) \Rightarrow b^{k_1}=b^{k_2} \Rightarrow k_1=k_2.$$
Taking $x\in B$, then $x=b^i$, for some $i\in\mathbb{Z}$ and we can write $x=b^i=f(a^i)$. Since $a^i\in[a]$, $f$ is onto. Finally, if $a^m,a^n\in[a]$, we get
$$f(a^ma^n)=f(a^{m+n}) =b^{m+n}=b^mb^n=f(a^m)f(b^n).$$
$[a]$ and $[b]$ are finite and isomorphism. Hence they have the same order.
Do you agree with me?
Your first approach is wrong because you cannot deduce from the fact that $x^p=e$ that $q\mid p$. The second approach is also wrong because it doesn't follow from $b^{k_1}=b^{k_2}$ that $k_1=k_2$,
If $G=[a]$, then $o(a)=\#G$. Therefore, if $G=[a]=[b]$, then $o(a)=o(b)$ since both numbers are equal to the order of $G$.