Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Castg! en 18 Noviembre 2009, 22:33 pm



Título: Imprimir dato de bd en php
Publicado por: Castg! en 18 Noviembre 2009, 22:33 pm
nose como buscarlo! disculkpen si esto ya se posteo, mi problema es el siguiente. yo quiero SELECTionar (jajajaj) una columna de tal tabla eh imprimirla. el codigpo que uso es asi:
Código
  1. $dat = mysql_query('SELECT id_u
  2. FROM portafolios');
  3. echo $dat
  4.  

bueno ersto como resultado me da "ArrayArrayArrayArrayResource id #4" cual es el porblema? intente con un "mysql_fetch_array" pero creo que lo hice mal. un saludo


Título: Re: Imprimir dato de bd en php
Publicado por: :ohk<any> en 18 Noviembre 2009, 23:20 pm
 :laugh: :laugh:

Porque siempre debo "asumir" que los datos de conexion existen y que en realidad en tu consulta de verdad y no esa que mostraste si anuncias a que conexion le haces la consulta o a que bd, bueno suponiendo que todo marcha bien hasta ahí, lo único que deberia fallarte es que cuando haces "echo $dat" deberias poner un " ; " al final y ya, si no es eso es que debes arreglar los datos de conexion y debes especificar a donde haces la consulta y uf, un par de cosas mas que no muestras  :P


Título: Re: Imprimir dato de bd en php
Publicado por: Castg! en 19 Noviembre 2009, 00:39 am
tenes razon, muy desprolijo lo imo. Copio y pego el archivo:
Código
  1. <?php
  2. $name = $_POST["nombre"];
  3. $img = $_POST["imagen"];
  4. $desc = $_POST["descripcion"];
  5. ?>
  6. <?php
  7. $link = mysql_connect("localhost","root","");
  8. mysql_select_db("inca_db", $link);
  9. mysql_query('INSERT INTO portafolios (name_u,img_u,desc_u) VALUES ("'.$name.'","'.$img.'","'.$desc.'")', $link);
  10. $dat = mysql_query('SELECT id_u
  11. FROM portafolios');
  12. while ($total = mysql_fetch_array($dat)){
  13. echo $total; };
  14. echo $dat;
  15. $my_error = mysql_error($link);
  16. if(!empty($my_error)) {
  17.  
  18.        echo "Ha habido un error al insertar los valores. $my_error";
  19.  
  20.    } else {
  21.  
  22.        echo "Los datos han sido introducidos satisfactoriamente";
  23.  
  24.    }
  25. ?>


Título: Re: Imprimir dato de bd en php
Publicado por: [u]nsigned en 19 Noviembre 2009, 16:46 pm
mysql_fetch_array() devuelve, lógicamente un array, asi que para mostrar los items tenes que hacer algo como:

Código
  1. <?php
  2. $name = $_POST["nombre"];
  3. $img = $_POST["imagen"];
  4. $desc = $_POST["descripcion"];
  5. $link = mysql_connect("localhost","root","");
  6. mysql_select_db("inca_db", $link);
  7. mysql_query('INSERT INTO portafolios (name_u,img_u,desc_u) VALUES ("'.$name.'","'.$img.'","'.$desc.'")', $link);
  8. $dat = mysql_query('SELECT id_u FROM portafolios');
  9. while ($registros = mysql_fetch_array($dat)){
  10.    echo $registros['id_u'];
  11. }
  12. $total = mysql_num_rows($dat);
  13. echo $total;
  14. $my_error = mysql_error($link);
  15. if(!empty($my_error)) {
  16.  
  17.        echo "Ha habido un error al insertar los valores. $my_error";
  18.  
  19.    } else {
  20.  
  21.        echo "Los datos han sido introducidos satisfactoriamente";
  22.  
  23.    }
  24. ?>


En este caso $dat es un objeto, no un array, la funcion que nos devulve el array es mysql_fetch_array(),y la funcion mysql_num_rows() nos devuelve el numero de registros en un objeto determinado.

Espero que seas capas que apreciar las modificaciones que le hehco a tu codigo y sacar tus propias conclusiones, de todas formas creo que tenes un lio con PHP y MYSQL, a releer un manual ya!  :xD ;) :)