Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Volcado de datos de phpmyadmin a web

Estas en el tema de Volcado de datos de phpmyadmin a web en el foro de PHP en Foros del Web. Hola a todos, quería haceros la siguiente consulta: - Domino el sistema de formularios y su volcado de datos en dirección a phpmyadmin, pero mi ...
  #1 (permalink)  
Antiguo 04/09/2014, 09:11
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 11 años, 1 mes
Puntos: 0
Volcado de datos de phpmyadmin a web

Hola a todos, quería haceros la siguiente consulta:

- Domino el sistema de formularios y su volcado de datos en dirección a phpmyadmin, pero mi duda es la siguiente:

¿Puedo hacer que datos de phpmyadmind sean volcados hacia una página web en un formato de tabla? Es decir tengo varios usuarios y de cada usuario hay una serie de características por ejemplo artículos comprados, fecha de nacimiento, dni...

He buscado cómo hacerlo en internet pero en relación a volcarlos de esta manera para que los vean varios usuarios no he encontrado nada. A ver si me podéis aconsejar cual sería el código a usar o algun enlace donde me venga algo al respecto.


Un saludo y gracias de antemano!
  #2 (permalink)  
Antiguo 04/09/2014, 09:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Volcado de datos de phpmyadmin a web

phpMyadmin no es una base de datos, sino una interfaz programada en PHP para acceder a un servidor MySQL de modo amigable.
No puedes "volcar" los datos desde phpMyadmin a una web, sino desde MySQL a la web, y eso es lo que se hace habitualmente... La inmensa mayoría de los posts de este foro que tratan de datos tomados de la base se refieren a lo mismo que estás buscando.

Puedes emepzar mirando las FAQs de PHP, donde hay un tema referido a trabajar con BBDD.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 04/09/2014, 10:14
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Volcado de datos de phpmyadmin a web

Sí tienes toda la razón, quizás la terminología que usé no fue la más adecuada, pero creo que se me entendió lo que quería expresar.
  #4 (permalink)  
Antiguo 04/09/2014, 11:14
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Volcado de datos de phpmyadmin a web

Que tal, tras mirar las faqs que encontré por ejemplo aquí:

http://www.forosdelweb.com/wiki/PHP#...Bases_de_Datos


Entonces creo que la respuesta adecuada a mi pregunta puede ser:

1) Script config.php para establecer la conexion (he usado el tipico que uso para las sesiones de login -similar-):

Código PHP:
<?php 
$conexion 
mysql_connect("localhost""root", )
$servidor 'localhost';
$usuario 'root';
$password '';
$db_name="test"// Database name 


mysql_connect("$host""$username""$password")or die("cannot connect"); 
?>

Y a continuación este para el volcado de datos:


Código PHP:
   <?php
include('config.php');  //INCLUIMOS SCRIPT DE CONEXIÓN A BASE DE DATOS
$tabla="prueba";   //NOMBRE DE LA TABLA A MOSTRAR
$result mysql_query("select * from $tabla"); 
echo 
"<table bgcolor=\"#DDDDDD\" align=center style=\"border:2px outset black\">";
for (
$i 0$i mysql_num_fields($result); $i++)
    { 
    print 
"<th>".mysql_field_name($result$i)."</th>\n"
    } 
while (
$registro mysql_fetch_row($result))
    {
    echo 
"<tr>";
    foreach(
$registro  as $clave)
        {
        echo 
"<td bgcolor=\"#BBBBBB\"style=\"border:2px groove black\" align=\"center\">",$clave,"</td>";
        }
    }
echo 
"</tr></table>";
mysql_close(); 
?>

¿qué os parece?
  #5 (permalink)  
Antiguo 05/09/2014, 12:27
 
Fecha de Ingreso: abril-2014
Mensajes: 37
Antigüedad: 10 años, 7 meses
Puntos: 2
Respuesta: Volcado de datos de phpmyadmin a web

No probé el codigo de arriba, pero se ve bueno, ahora, ya el uso de la extensión MYSQL está desaconsejada, podrías usar mysqli, pero tampoco es muy completa.

Lo que actualmente se está usando es la extensión PDO, por su robustez y seguridad en el flujo de información.

Te invito a leer un poco sobre eso, de todos modos te dejo un ejemplo

Archivo de Configuración de Conexión.

"ParametrosDB.php"
Código PHP:
Ver original
  1. <?php
  2. class basedeDatos{
  3.     public $host = "Aqui la IP o direccion de la base de datos (localhost)";
  4.     public $SGBD = "Motor de DB (mysql)";
  5.     public $DB   = "Nombre de la DB";
  6.     public $usuario    = "USUARIO (root)";
  7.     public $contrasena = "CONTRASEÑA(Si no posee, se deja vacio)";
  8. }
  9. ?>

Archivo que contiene la Clase extendida de PDO

"Conexion.php"
Código PHP:
Ver original
  1. <?php
  2. /**
  3.  * Archivo de Conexion
  4.  *
  5.  * Este archivo contiene la clase conexion que a su vez contiene los metodos y atributos para el manejo
  6.  * de las conexiones a la base de datos
  7.  * @author Pedro Lugo <[email protected]>
  8.  * @copyright 2014
  9.  */
  10. /**
  11.  * ParametrosDB
  12.  *
  13.  * Incluye el archivo que define los parametros de la base de datos a usar en la clase Conexion
  14.  */
  15. include 'parametrosBD.php';
  16.     /**
  17.      * Conexion
  18.      *  
  19.      * Clase para el manejo de las conexiones y las consultas a la base de datos
  20.      *
  21.      */
  22. class conexion extends PDO{
  23.     private $stmt;
  24.     private $conn;
  25.     private $opciones;
  26.     /**
  27.      * Constructor
  28.      *
  29.      * Constructor de los parametros de la conexion a la Base de datos
  30.      * @param string $host      Ip o url a la que se conecta
  31.      * @param string $otraBd    Nombre de la Base de datos
  32.      * @param string $user      Usuario de la Base de Datos
  33.      * @param string $contasena Password de la Base de Datos
  34.      */
  35.     public function __construct($host=NULL,$otraBd=NULL,$user=NULL,$contasena=NULL){
  36.         $bd = new basedeDatos();
  37.         if($otraBd!=NULL){
  38.             $bd->setBD($otraBd);
  39.             $bd->setUsuario($user);
  40.             $bd->setPass($contasena);
  41.             $bd->setHost($host);
  42.         }
  43.         $opciones = array(PDO::ATTR_PERSISTENT => true,
  44.                     PDO::ATTR_ERRMODE  => PDO::ERRMODE_EXCEPTION);              
  45.         try {  
  46.             $dsn = $bd->SGBD.":dbname=".$bd->DB.";"."host=".$bd->host;
  47.             $this->conn = new PDO($dsn,$bd->usuario,$bd->contrasena,$opciones);
  48.         }
  49.         catch (PDOException $e){
  50.             die($e->getMessage());
  51.         }
  52.     }
  53.     /**
  54.      * Numero de Registros
  55.      *
  56.      * Funcion que muestra la cantidad de registros devueltos de la consulta a la base de datos
  57.      * @param string $query Contiene la consulta SQL
  58.      * @access public
  59.      */
  60.     public function ver_num_registros($query){
  61.         $csl = $this->conn->prepare($query);
  62.         if($csl){
  63.             $csl->execute();
  64.             return $csl->rowCount();
  65.         }
  66.         else{
  67.             return self::get_error();
  68.         }
  69.     }
  70.     /**
  71.      * Consulta
  72.      *
  73.      * Funcion que devuelve el resultado de una consulta establecida en la variable $qry
  74.      * @param string La variable $qry debe contener la sentencia SQL
  75.      * @param integer La variable $param debe contener el valor segun el tipo fetch que necesita ejemplo: 2=fetch_assoc
  76.      */
  77.     public function query($qry,$param=NULL){
  78.         $tipoFetch = 2 ;
  79.         if(isset($param)){
  80.             $tipoFetch = $param;
  81.         }                        
  82.         try{
  83.             $res = $this->conn->query($qry, $tipoFetch);
  84.             return $res;
  85.         }
  86.         catch(PDOException $e){
  87.             $errorCod=($this->conn->errorInfo());
  88.             $errorCod=$errorCod[1];
  89.             switch ($errorCod){
  90.                 case $errorCod===1062:
  91.                     echo "¡Registro existente!";
  92.                     break;
  93.                 case $errorCod===1451:
  94.                     echo "¡Tiene datos Asignados!";
  95.                     break;
  96.                 default:
  97.                     echo "Error en la DB > ".$errorCod;
  98.                     break;
  99.             }
  100.             die();
  101.         }
  102.     }
  103.     /**
  104.      * Consulta Preparada
  105.      *
  106.      * Funcion encargada de ejecutar una consulta preparada
  107.      * @param string La variable $sql debe contener la sentencia SQL.
  108.      */
  109.     public function prepare($sql){
  110.         $this->stmt = $this->conn->prepare($sql);
  111.         return $this->stmt;
  112.     }
  113.     /**
  114.      * Ejecutar
  115.      *
  116.      * Funcion para ejecutar una consulta SQL
  117.      * @access public
  118.      */
  119.     public function execute(){
  120.         $this->stmt->execute();
  121.     }
  122. }
  123. ?>

Ahora, luego de que establecimos lo anterior, puedes hacer uso de la siguiente forma:

"index.php"

Código PHP:
Ver original
  1. <?php
  2.     /**
  3.     *Incluimos el archivo conexion.php
  4.     */
  5.     include 'conexion.php';
  6.     //Instanciamos la clase conexion()
  7.     $conex=new conexion();
  8. ?>
  9. <!--Cuerpo de la web-->
  10. <!DOCTYPE html>
  11. <html>
  12. <head>
  13.     <title>Prueba Conexion</title>
  14. </head>
  15. <body>
  16.     <table>
  17.     <thead><tr><th>Valor1</th><th>Valor2</th></tr></thead>
  18.         <tbody>
  19.         <?php
  20.             $results=$conex->("select * from tabla");
  21.             foreach ($results as $key => $value) {
  22.                 echo "<tr><td>".$value["columna1"]."</td><td>".$value["columna2"]."</td></tr>";
  23.             }
  24.         ?>
  25.         </tbody>
  26.     </table>
  27. </body>
  28. </html>
  #6 (permalink)  
Antiguo 06/09/2014, 02:11
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Volcado de datos de phpmyadmin a web

Hola roberty y demás compañeros/as, encontré una forma aún más sencilla a ver que te parece esta:

*por cierto lo que me has comentado de que la función está obsoleta y se usa más la otra es cierto, buscando información yo tb lo he visto pero no se cómo me quedaría el nuevo código con la función actualizada, tengo bastantes dudas en relación a ello, mira te lo pego aquí para que lo veas, y si puedes me dices como quedaría con la función actualizada:



Código PHP:

<?php




$connect 
mysql_connect("localhost""root""") ; 

if (!
$connect) {
die (
"Can not connect: " mysql_error () ) ; 
}



mysql_select_db("modelobdclase"$connect) ; 

$sql "SELECT * FROM datosalumnado";



$myData mysql_query($sql$connect) ; 
echo  
"<table border=1> 

<tr>
<th> id_alumnado </th>
<th> nombre </th>
<th> apellido1 </th>
<th> apellido2 </th>
<th> curso </th>
<th> fechadenacimiento </th>
<th> e-mail </th>
<th> direccion </th>
</tr>"

while (
$record mysql_fetch_array ($myData)) {
echo 
"<tr>";
echo 
"<td>" $record ['id_alumnado'] . "</td>"
echo 
"<td>" $record ['nombre'] . "</td>"
echo 
"<td>" $record ['apellido1'] . "</td>"
echo 
"<td>" $record ['apellido2'] . "</td>"
echo 
"<td>" $record ['curso'] . "</td>"
echo 
"<td>" $record ['fechanacimiento'] . "</td>"
echo 
"<td>" $record ['e-mail'] . "</td>"
echo 
"<td>" $record ['direccion'] . "</td>"
}
echo 
"</table>" ;

mysql_close($connect) ; 


?>


Etiquetas: fecha, formulario, phpmyadmin, tabla, usuarios, volcado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:36.