Cita: La mejor forma de tener mensajes de salida es como me explicaste
En el contexto de lo que planteas, si. Es la forma de obtenerlos.
¿Si es la mejor? Puede que no, pero depende mucho del lenguaje que uses, y como estás usando PHP es una de las formas más sencillas.
Respecto al PHP... bueno, estás poniendo mal una parte, porque cada una de las líneas al final es una sentencia a ejecutar por si misma:
Código PHP:
$hostname = "localhost";
$database = "db";
$username = "root";
$password = "pass";
$link1 = mysqli_connect($hostname, $username, $password) or die(mysqli_error($link1));
mysqli_select_db($link1,$database);
if($link1)
$sql = "set @total='';";
$resultado = mysqli_query($link1,$sql) ;
if($resultado)
{$sql = "CALL procedure1('17')";
$resultado = mysqli_query($link1,$sql) ;
if($resultado)
{$sql = "SELECT @total";
$resultado = mysqli_query($link1,$sql)
or die('No se pudo realizar la consulta ' . mysqli_error($link1));
}
}
de lo contrario solamente estás ejecutando la última sentencia, y obviamente te dará NULL...