How to determine Integer or String based SQL Injection?
Simple. Look at the value in parameter cat=1.
If the value is a number, then it's an integer.
If the value is a letter, then it's a string.
In this case, 1 is a number, and yes ... it's an integer.
To answer your question, yes this is an Integer Based SQL Injection and ' not required.