PHP problema 2

Iniciado por jalbtercero, 1 Marzo 2016, 13:19 PM

0 Miembros y 1 Visitante están viendo este tema.

jalbtercero

vale tengo este coigo con este error:Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in /home/a3005457/public_html/puntuacion.php on line 9

Código (php) [Seleccionar]

<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
function mostrarDatos($resultados) {
if($resulatdos !=NULL){
echo "-Nombre:"$resultados['nombre']"<br/>";
echo "-Empates:"$resultados['empates']"<br/>";
echo "-TU:"$resultados['tu']"<br/>";
echo "-IA:"$resultados['ia']"<br/>";
echo "********************************************<br/>";
} else {

echo "<br/>No hay mas datos<br/>";
}

require(
"connect_db.php")
$result mysql_query($link,"SELECT * FROM puntuacion");
while(
$fila mysql_fetch_array($result)) {
mostrarDatos($fila);
}
mysqli_free_result($result);
mysqli_close($link);
?>

</body>
</html>


engel lex

se descriptivo con el titulo de tu problema... tambien puedes ponerlos todos en un solo post, van de lo mismo...

sobre el problema
CitarDevuelve un array de cadenas que corresponde a la fila recuperada, o FALSE si no hay más filas.

retorna false, cuidado con NULL en php
http://php.net/manual/es/language.types.null.php

siéntate a revisar bien tu código y usa un buen ide que te avise de los errores antes de correrlo

Código (php) [Seleccionar]
"-Nombre:"$resultados['nombre']"<br/>";

eso está mal... estás colocando una variable al aire y despues de un string... lo que te dice php es que ya que no hay un conector, debería terminar la frase...

el operador de concatenación en php es el punto

Código (php) [Seleccionar]
echo "-Nombre:".$resultados['nombre']."<br/>";

por otro lado, veo que no estás muy claro con las variables y estás copiando mucho código, porque en el problema anterior lo aplicaste y en este no... las variables en php se evalúan entre comillas dobles, es decir, puedes hacer

Código (php) [Seleccionar]
echo "-Nombre:$resultados['nombre']<br/>";

tienes otro error, vamos a ver si te das cuenta
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

jalbtercero

Cita de: engel lex en  1 Marzo 2016, 13:30 PM
se descriptivo con el titulo de tu problema... tambien puedes ponerlos todos en un solo post, van de lo mismo...

sobre el problema
retorna false, cuidado con NULL en php
http://php.net/manual/es/language.types.null.php

siéntate a revisar bien tu código y usa un buen ide que te avise de los errores antes de correrlo

Código (php) [Seleccionar]
"-Nombre:"$resultados['nombre']"<br/>";

eso está mal... estás colocando una variable al aire y despues de un string... lo que te dice php es que ya que no hay un conector, debería terminar la frase...

el operador de concatenación en php es el punto

Código (php) [Seleccionar]
echo "-Nombre:".$resultados['nombre']."<br/>";

por otro lado, veo que no estás muy claro con las variables y estás copiando mucho código, porque en el problema anterior lo aplicaste y en este no... las variables en php se evalúan entre comillas dobles, es decir, puedes hacer

Código (php) [Seleccionar]
echo "-Nombre:$resultados['nombre']<br/>";

tienes otro error, vamos a ver si te das cuenta

Hmmmmmm lo he probado como lo dices y me sigue dando error y no veo el otro....

engel lex

probandolo como te dije que error te da? (recuerda que decir "me ha dado error" aquí no sirve XD copy/paste del error como minimo
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

jalbtercero

Cita de: engel lex en  1 Marzo 2016, 14:56 PM
probandolo como te dije que error te da? (recuerda que decir "me ha dado error" aquí no sirve XD copy/paste del error como minimo

el error es Parse error: syntax error, unexpected T_FUNCTION in /home/a3005457/public_html/puntuacion.php on line 8 y el codigo:

Código (php) [Seleccionar]

<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
require("connect_db.php")
function 
mostrarDatos($resultados) {
if($resulatdos !=NULL){
echo "-Nombre:$resultados['nombre']<br/>";
echo "-Empates:$resultados['empates']<br/>";
echo "-TU:$resultados['tu']<br/>";
echo "-IA:$resultados['ia']<br/>";
echo "********************************************<br/>";
} else {

echo "<br/>No hay mas datos<br/>";
}


$result mysql_query($link,"SELECT * FROM puntuacion");
while(
$fila mysql_fetch_array($result)) {
mostrarDatos($fila);
}
mysql_free_result($result);
mysql_close($link);
?>

</body>
</html>


xiruko

#5
En PHP no puedes mostrar arrays directamente entre comillas dobles, debes encerrarlos entre corchetes.

Para una variable que no sea un array, puedes hacer esto:

Código (php) [Seleccionar]
$nombre = "Pepe";
echo "Hola $nombre";     // opción 1
echo "Hola " . $nombre;  // opción 2


Pero para arrays, debe ser una de estas dos opciones:

Código (php) [Seleccionar]
$user = array("nombre" => "Pepe");
echo "Hola {$user['nombre']}";    // opción 1
echo "Hola " . $user['nombre'];   // opción 2


EDITO: Después de ver tu última respuesta... Los errores que cometes son bastante chorras e indican poco esfuerzo por tu parte.

1. Línea 7: Falta un ";" al final.
2. Línea 9: Usas la variable "$resulatdos" cuando debería ser "$resultados".
3. Deberías usar mysqli en lugar de mysql.

Saludos!

jalbtercero

Cita de: xiruko en  1 Marzo 2016, 15:01 PM
En PHP no puedes mostrar arrays directamente entre comillas dobles, debes encerrarlos entre corchetes.

Para una variable que no sea un array, puedes hacer esto:

Código (php) [Seleccionar]
$nombre = "Pepe";
echo "Hola $nombre";     // opción 1
echo "Hola " . $nombre;  // opción 2


Pero para arrays, debe ser una de estas dos opciones:

Código (php) [Seleccionar]
$user = array("nombre" => "Pepe");
echo "Hola {$user['nombre']}";    // opción 1
echo "Hola " . $user['nombre'];   // opción 2


EDITO: Después de ver tu última respuesta... Los errores que cometes son bastante chorras e indican poco esfuerzo por tu parte.

1. Línea 7: Falta un ";" al final.
2. Línea 9: Usas la variable "$resulatdos" cuando debería ser "$resultados".
3. Deberías usar mysqli en lugar de mysql.

Saludos!

de acuerdo ahora muy bien no entiendo lo de mysqli me da:


Warning: mysqli_query() expects parameter 1 to be mysqli, resource given in /home/a3005457/public_html/puntuacion.php on line 22



Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in /home/a3005457/public_html/puntuacion.php on line 23


Warning: mysqli_free_result() expects parameter 1 to be mysqli_result, null given in /home/a3005457/public_html/puntuacion.php on line 26


Warning: mysqli_close() expects parameter 1 to be mysqli, resource given in /home/a3005457/public_html/puntuacion.php on line 27

engel lex

usaste lso respectivos mysqli open y todos esos? estás simplemente cambiando mysql por mysqli? :s
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

jalbtercero

#8
Cita de: engel lex en  1 Marzo 2016, 15:25 PM
usaste lso respectivos mysqli open y todos esos? estás simplemente cambiando mysql por mysqli? :s

vaaaale,ahora al menos no da error de syntaxis pero, en mi base de datos hay 3 filas con informacion y el php me devuelve 3 filas con:


No hay mas datos

No hay mas datos

No hay mas datos

EDITO:
Nada,nada era una tonteria, gracias por vuestro tiempo, :)