Pero si estás cometiendo un tremendo error.
¿Si sabes que los programas se ejecutan de arriba hacia abajo?
Bueno, pues lo que sucede es que las variables que utilizas con bindParam() las defines después de utilizarlas y eso jamás va a funcionar.
Es bien fácil corregir eso: primero defines las variables, y luego las usas.
Código PHP:
Ver original// MAL
foo($bar);
$bar = 'baz';
// BIEN
$bar = 'baz';
foo($bar);
Repito: primero defines las variables, y luego las usas.
¿Se entiende?
Y eso es básico en el mundo de la programación, ya ni se diga de cualquier lenguaje de programación.
Si sigues cometiendo errores tan básicos no vas a llegar muy lejos, primero deberías estudiar algo de teoría general acerca de programar, etc.