ECHO no me saca los datos

Iniciado por bgnumis, 24 Marzo 2015, 10:06 AM

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

bgnumis

Hola estoy intentando "mostrar" los datos de una consulta con echo ¡¡¡pero no me los saca¡¡¡ Me estoy volviendo loco, utilizo el siguiente echo:

    echo $busqueda[1];


¿Por qué no funciona?

Si consiguiera sacarlo...¿se podría enmarcar en una tabla?

Por fa ayudadme un poco.



Código (php) [Seleccionar]

<?php

include("conexion.php");




$con=mysql_connect($host,$user,$pw) or die ("problemas al conectar");
mysql_select_db($db,$con) or die ("problemas al conectar la bd");
$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='$_POST[id_deleg]'") ;

 
    echo 
$busqueda[1];

  

   

 
    
 
?>





 

<html lang="es">

<body>
<header>
<h6>  <td  width="15px" align="center">
        <!-- Proporcionar Link para cerrar sesion -->
        <a href="principal.php">VOLVER A REGISTRAR</a>
    </td>

</h6>


</body>
</html>









engel lex

#1
no te saca los datos porque no los has pedido...

te recomiendo que no uses ya esas funciona es de mysql porque se consideran obsoletas y quedarán fuera de php dentro de poco, usa mysqli o pdo




sobre tu error lo puedes ver en la documentación oficial de php.net
http://php.net/manual/es/function.mysql-query.php

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.

bgnumis

Hola,

Perdonad no encuentro forma de que me saque los datos del código:

Código (php) [Seleccionar]


$con=mysql_connect($host,$user,$pw) or die ("problemas al conectar");
mysql_select_db($db,$con) or die ("problemas al conectar la bd");
$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='$_POST[id_del]'") ;

while($fila=mysql_fetch_array($busqueda)){
echo $fila[1];
}


¿Qué me estoy saltando?

¿Como podría mostrar los datos en una tabla?

#!drvy

Código (php) [Seleccionar]
$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='$_POST[id_del]'") ;

Eso no es correcto aunque no se hasta que punto PHP lo podria corregir por si mismo. Los index de un array siempre deben ir como string.

Código (php) [Seleccionar]
$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='".$_POST['id_del']."'");

De todos modos eso es muy pero que muy inseguro. Nunca pases directamente el input de un usuario sin filtarlo.

Saludos

engel lex

primero debes revisar si la respuesta está vacía y si lo está, si hay errores o si es que no hay resultados

Código (php) [Seleccionar]
if(!$busqueda){
 if(mysql_error($con)){
   die(mysql_error($con));
 }else{
   die("la busqueda no retornó resultados");
 }

}
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.

MinusFour

Cita de: #!drvy en 26 Marzo 2015, 23:05 PM
Código (php) [Seleccionar]
$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='$_POST[id_del]'") ;

Eso no es correcto aunque no se hasta que punto PHP lo podria corregir por si mismo. Los index de un array siempre deben ir como string.

Código (php) [Seleccionar]
$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='".$_POST['id_del']."'");

De todos modos eso es muy pero que muy inseguro. Nunca pases directamente el input de un usuario sin filtarlo.

Saludos

De hecho no es necesario con double quoted strings poner los '' para los indices de arreglos asociativos:

http://php.net/manual/en/language.types.string.php#example-93

No creo que deberia darte problemas con la variables global $_, aunque yo preferiria usar curly braces y single quotes para los indices:

Código (php) [Seleccionar]

$busqueda=mysql_query("SELECT * FROM afil WHERE DEL='{$_POST['id_del']}'") ;


Si no tienes ningun error a la hora de seleccionar la BD o iniciar la conexion entonces la consulta debe estar mal o no hay resultados.