La cuestión es que los datos cuando se ejecuta el script los almacena correctamente en la base de datos, pero a la hora de mostrarlos marca el siguiente error:
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in ...
Código
Cita:
He mirado la sintaxis en la página oficial de php para comprobar si algo fallaba y según lo veo esta bien , supongo que alguna cosa estaré dejandome pero no doy con ella...
if ($_POST["calcular"])
{
$n1=$_POST['a'];
$n2=$_POST['b'];
$n3=$_POST['c'];
echo" El valor de a vale $n1"."<br>";
echo" El valor de b vale $n2"."<br>";
echo" El valor de c vale $n3"."<br><br>";
global $n1;
global $n2;
global $n3;
//Definimos la clase
class Aritmetica
{
//var $factor1=8;
//var $factor2=2;
function ecuacionsegundogrado()
{ //metodo
global $n1;
global $n2;
global $n3;
$discriminante=(pow($n2,2)-(4*$n1*$n3));//Lo asignamos a una variable--->(b2 - 4ac) se llama discriminante de la ecuación y permite averiguar en cada ecuación el número de soluciones
if ($discriminante<0)//La funcion pow sirve para calcular el exponente de una base pow( numbero $base , numbero $exp )
{
echo"No hay solución posible"."<br>";
}
else
{
$conexion=mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('ecuacion')or die ('Error al seleccionar la Base de Datos: ');
$consulta=mysql_query("use ecuacion",$conexion);
$x1=(-$n2+pow($discriminante,1/2))/(2*$n1);//asignamos la variable $x1 la formula para el resultado positivo,ejemplo del calculo raiz cuadrada de el numero 8$raiz3de8 = pow(8,(1/3)) positivo
$x2=(-$n2-pow($discriminante,1/2))/(2*$n1);//igual que el primero pero en negativo
$vx1=round($x1,2);
$vx2=round($x2,2);
$consulta = mysql_query("insert into datos(a,b,c,positivo,negativo) values ($n1,$n2,$n3,$vx1,$vx2)")or die ('La consulta falló: ' . mysql_error());
echo"<table border=1><tr><th>A</th><th>B</th><th>C</th><th>Positivo</th><th>Negativo</th></tr>";
while ($registro = mysql_fetch_object($consulta))
{
echo"<tr><td>";
echo $registro->a;
echo"</td><td>";
echo $registro->b;
echo"</td><td>";
echo $registro->c;
echo"</td><td>";
echo $registro->positivo;
echo"</td><td>";
echo $registro->negativo;
echo" </td></tr>";
}
echo"</table>";
}
}
}
$objeto= new Aritmetica;
echo $objeto->ecuacionsegundogrado();//llamada al metodo
echo"<br>";
}
if ($_POST["calcular"])
{
$n1=$_POST['a'];
$n2=$_POST['b'];
$n3=$_POST['c'];
echo" El valor de a vale $n1"."<br>";
echo" El valor de b vale $n2"."<br>";
echo" El valor de c vale $n3"."<br><br>";
global $n1;
global $n2;
global $n3;
//Definimos la clase
class Aritmetica
{
//var $factor1=8;
//var $factor2=2;
function ecuacionsegundogrado()
{ //metodo
global $n1;
global $n2;
global $n3;
$discriminante=(pow($n2,2)-(4*$n1*$n3));//Lo asignamos a una variable--->(b2 - 4ac) se llama discriminante de la ecuación y permite averiguar en cada ecuación el número de soluciones
if ($discriminante<0)//La funcion pow sirve para calcular el exponente de una base pow( numbero $base , numbero $exp )
{
echo"No hay solución posible"."<br>";
}
else
{
$conexion=mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('ecuacion')or die ('Error al seleccionar la Base de Datos: ');
$consulta=mysql_query("use ecuacion",$conexion);
$x1=(-$n2+pow($discriminante,1/2))/(2*$n1);//asignamos la variable $x1 la formula para el resultado positivo,ejemplo del calculo raiz cuadrada de el numero 8$raiz3de8 = pow(8,(1/3)) positivo
$x2=(-$n2-pow($discriminante,1/2))/(2*$n1);//igual que el primero pero en negativo
$vx1=round($x1,2);
$vx2=round($x2,2);
$consulta = mysql_query("insert into datos(a,b,c,positivo,negativo) values ($n1,$n2,$n3,$vx1,$vx2)")or die ('La consulta falló: ' . mysql_error());
echo"<table border=1><tr><th>A</th><th>B</th><th>C</th><th>Positivo</th><th>Negativo</th></tr>";
while ($registro = mysql_fetch_object($consulta))
{
echo"<tr><td>";
echo $registro->a;
echo"</td><td>";
echo $registro->b;
echo"</td><td>";
echo $registro->c;
echo"</td><td>";
echo $registro->positivo;
echo"</td><td>";
echo $registro->negativo;
echo" </td></tr>";
}
echo"</table>";
}
}
}
$objeto= new Aritmetica;
echo $objeto->ecuacionsegundogrado();//llamada al metodo
echo"<br>";
}
Gracias
Un Saludo