PHP - Código no me muestra el resultado de la consulta

 
Vista:
Imágen de perfil de Claudio Gonzalez
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

Código no me muestra el resultado de la consulta

Publicado por Claudio Gonzalez (70 intervenciones) el 10/09/2010 00:21:23
Hola Que tal.

Tengo el siguiente código, y buscado una mil formas, para que muestre el resultado de la consulta y solo me muestra Nombre, no me indica ningún error.
Esta linea $sql = "SELECT * FROM spc_admin WHERE usuario=$_SESSION[usuario]"; la he puesto de varias formas, con comillas simples, con dobles, con punto de concatenar y nada.

Por favor si alguien me puede ayudar a solucionar el inconveniente, estaré muy agradecido.

<?php
session_start();
if ($_SESSION["usuario"])
{
?>
<link type="text/css" rel="stylesheet" href="../css/estilos.css" />
<?php

require('../funciones/cabeceras.php');

?>
<div id="contenedor">
<?php
Cabecera();
require('menucliente.php');
?>
<div id="centro">
<h2>Bienvenido <?php echo $_SESSION['usuario'] ?>,
a tu oficina virtual de Servpcweb
</h2>
<?php
include('conexion.inc');
$sql = "SELECT * FROM spc_admin WHERE usuario=$_SESSION[usuario]";
$consulta = mysql_query($sql);
echo "<h3> Nombre: $consulta[nombre] </h3>";
?>
</div>
<?php
require('menucliente.php');
?>
</div>
</body>
</html>
<?php
}else
{
echo "<script type='text/javascript'>
alert('Usted no esta Logueado');
window.location:' ../index.php';
</script>";
}
?>

Un Cordial saludo desde Valparaíso - Chile
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Código no me muestra el resultado de la consult

Publicado por Eduardo (28 intervenciones) el 10/09/2010 16:44:12
Saludos
la consulta debe ir (van comillas simples):

$sql = "SELECT * FROM spc_admin WHERE usuario='$_SESSION[usuario]'";

Pero de preferencia captura el valor de la session antes para simplificar o sea:

$u=$_SESSION['usuario'];
$sql = "SELECT * FROM spc_admin WHERE usuario='$u'";

Para mysql todas las comparaciones en campos que no son de tipo numerico deben ir entre comillas simples.

Hasta luego
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio Gonzalez
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:Código no me muestra el resultado de la consult

Publicado por Claudio Gonzalez (70 intervenciones) el 10/09/2010 20:13:11
Hola Eduardo, Gracias por la respuesta, y lamento decirte que no pasó nada, sigue todo igual en local y en la web, solo muestra Nombre : y no el resultado de la consulta.

Un Cordial saludo desde Valparaíso - Chile
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Código no me muestra el resultado de la consult

Publicado por Leandro (42 intervenciones) el 10/09/2010 21:48:46
una observacion es que para usar el array $_SESSION el indice debe ir entre comillas
$_SESSION["usuario"] o $_SESSION['usuario']
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio Gonzalez
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:Código no me muestra el resultado de la consult

Publicado por Claudio Gonzalez (70 intervenciones) el 11/09/2010 01:14:24
Gracias por tu respuesta, eso ya lo he probado y me da error de encapsulamiento o error de string, por tanto estoy seguro que va sin comillas el nombre de la columna o del campo,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Código no me muestra el resultado de la consult

Publicado por Leandro (42 intervenciones) el 13/09/2010 16:36:35
VA CON comillas SIEMPRE.
Lo que ocurre es lo siguiente: para poner comillas simples adentro de comillas simples debes "escapearlas con la barra / " .
Lo mismo courre si usas comillas dobles dentro de comillas dobles.

$sql = "SELECT * FROM spc_admin WHERE usuario=$_SESSION[\"usuario\"]";

Si usas comillas simples adentro de comillas dobles o al reves no tienes que poner la barra:

$sql = "SELECT * FROM spc_admin WHERE usuario=$_SESSION['usuario']";

De las dos maneras esta bien la consulta.

Esto es porque en php, si inicias un string con comillas de un tipo y en el medio le pones comillas del mismo tipo, php piensa que estas terminando el string ( proque el string empieza y termina con el mismo tipo de comillas) .


Saludos
Leandro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio Gonzalez
Val: 28
Ha aumentado su posición en 8 puestos en PHP (en relación al último mes)
Gráfica de PHP

RE:Código no me muestra el resultado de la consult

Publicado por Claudio Gonzalez (70 intervenciones) el 13/09/2010 16:58:05
Muchas Gracias, ya se ha solucionado el inconveniente.

Muchas Gracias a todos

Un Cordial saludo desde Valparaíso - Chile
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar