Problema MYSQL

Tras crear mi base de datos Jugadores con la tabla datos dentro de ella, al intentar ejecutar el php me da el siguiente error:
Fatal error: Call to a member function fetch_assoc() on a non-object in C:\wamp\www\OH\plantilla.php on line 35
<!--p<br-->$mysqli = new mysqli('localhost');
$mysqli->select_db('jugadores');
$result = $mysqli->query("SELECT * FROM datos");
while($row = $result->fetch_assoc()) {
print $row['Jugador'] . ' ' . $row['Edad'] . '
';
}
$result->close();
?>
Si es algo del nombre de usuario y contraseña de Mysql, no tengo ni idea de cuáles son. De hecho creo que no tengo contraseña.

1 Respuesta

Respuesta
1
en primera el error que te esta marcando es <span style="border-collapse: collapse; color: #4a4a4a; font-family: Arial; line-height: 17px;">Call to a member function fetch_assoc() on a non-object lo cual significa que fetch_assoc no es un metodo miembro del objeto, por lo tanto no lo puedes llamar...  y al parecer si es un error por lo que no has asignado usuario y pass... checa eso (por lo regular es user: 'root' y pass: ''). Si no es checa tu consulta...</span>
Te dejo una referencia http://mx.php.net/mysqli_query
Resuelto lo anterior.
Ahora quiero saber cómo dar formato a la tabla (font, bordes, tamaño...).
Además si me pudiera explicar el tema de hacer links a una tabla estándar y que la tabla muestre los datos del jugador LINKEADO únicamente, sería perfecto.
Mil gracias
Código:
<?php
$con = mysql_connect("localhost","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("jugadores", $con);
$result = mysql_query("SELECT * FROM datos");
echo "
<table border='2' RULES=NONE FRAME=BOX>
<tr>
<th>Jugador</th>
<th>Posición</th>
</tr>
";while($row = mysql_fetch_array($result))
{
echo "
<tr>
";
echo "
<td>" . $row['Jugador'] . "</td>
";
echo "
<td>" . $row['Posición'] . "</td>
";
echo "
</tr>
";
}
echo "
</table>
";mysql_close($con);
?>
¿Cómo darle color, sangría, posición, etc a un elemento o a varios? se hace con estilos... hay dos formas
1. Tag Style: si checas la documentación sobre html4 te encontraras con una nueva etiqueta para varios tags (si no es que todos), style, lo que permite es asignar una serie de características visuales al objeto (a objeto me refiero a una table, tr, td, a, br, hr, span, div, etc)
2. Hojas de estilo: hay un tipo de documento que son CSS (hojas de estilo en cascada), mediante a la cual le aplicas estilo a uno o a varios de los objetos.
Realmente el tema es muy amplio y nos tardaríamos mucho en explicarte que hace cada cosa, por esta razón te voy a dejar una liga del rfc que hace referencia a los CSS... podrías también buscar el rfc de html 4
http://html.conclase.net/w3c/css1-es.html
Para lo segundo que pides pues... veamos, si ya tienes tu catalogo de jugadores (que creo que es el que pones arriba) entonces lo que hay que hacer es mandar a otra página (datosJugador.php) el id del jugador seleccionado para que esta muestre sus datos personales, entonces
<span style="border-collapse: collapse; color: #4a4a4a; font-family: Arial; line-height: 17px;">
<table border='2' RULES=NONE FRAME=BOX>
<tr>
<th>Jugador</th> 
<th>Posición</th> 
</tr>
";while($row = mysql_fetch_array($result)) 

echo " 
<tr>
"; 
echo " 
<td><a href=\"datosJuador.php?id=".$row['Jugador'] ."\"" . $row['Jugador'] . "</a></td>
 </span>
<span style="border-collapse: collapse; color: #4a4a4a; font-family: Arial; line-height: 17px;">"; 
echo " 
<td>" . $row['Posición'] . "</td>
"; 
echo " 
</tr>
"; 

echo " 
</table>
 </span>
y en la pagina datosJugador.php
<span style="border-collapse: collapse; color: #4a4a4a; font-family: Arial; line-height: 17px;">$con = mysql_connect("localhost","root"); 
if (!$con) 

die('Could not connect: ' . mysql_error()); 

mysql_select_db("jugadores", $con); 
$result = mysql_query("SELECT * FROM datos where idJugador = ".$_GET['id']); </span>
<span style="border-collapse: collapse; color: #4a4a4a; font-family: Arial; line-height: 17px;">$row = mysql_fetch_array($result);</span>
echo "nombre: ".$row['nombre'];
echo "posicion: ".$row['posicion'];
...
...
...
Espero lo hayas entendido, me despido y no olvides calificar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas