Cuando se conecte a mysql y pretenda utilizar un procedimiento almacenado, debe pasar un especial Flag para MySQL a través del comando connect, de lo contrario no obtendrá los resultados devueltos, y dará lugar a este error:
Error 1312 (0A000): PROCEDURE x can't return a result set in the given context.
Para corregir esto, cambie su cadena de conexion, adicionando ",false,131072", o ",false,65536" en los últimos 2 campos en:
$this->con = mysql_connect(host,user,password,false,65536);
según la documentación de mysql, se debe activar CLIENT_MULTI_RESULTS, sin embargo, al activar CLIENT_MULTI_STATEMENTS automáticamente se activa el primero.
ver en php.net o php.net y en dev.mysql.com
Gracias! No había encontrado una solución tan simple.
ResponderEliminarSaludos y gracias nuevamente!
Muchisimas gracias, habia dado muchas vueltas y la solución es mas simple.
ResponderEliminarGracias amigo una solucion sencilla para un problema al que anduve dando muchas vueltas
ResponderEliminarte debo una
Att Luis VaMa
GRACIAS!!!!! ese error me habìa causado dolor de cabeza 2 dìas!! :S
ResponderEliminarGracias. Gente como tú es la que hace grande internet.
ResponderEliminargracias viejo me has salvado
ResponderEliminarGracias solucion sencilla porque en todos los foros refieren a hacer cambios en los objetos de conexion
ResponderEliminar