Pregunta:
Fecha: 05-02-2017 18:44:01
(En Español)
Tengo un problema, la página me sale en blanco, no encuentro el error, hago la puebra con un archivo echo y me funciona pero desde la base de datos no me sale todo en blanco.
index.php
Conexion.php
Seccion.php
Autoload.php
Estudiante.php
BASE DE DATOS DEL PROYECTO
Estructura de tabla para la tabla estudiantes
Columna Tipo Nulo Predeterminado
id int(11) No
nombre varchar(200) No
edad int(11) No
promedio double No
imagen varchar(200) No
id_seccion int(11) No
fecha datetime No
Volcado de datos para la tabla estudiantes
1 pedro salas 20 15 0 2017-02-28 00:00:00
2 lina ramirez 43 40 no tiene 3 2017-02-14 00:00:00
Estructura de tabla para la tabla secciones
Columna Tipo Nulo Predeterminado
id int(11) No
nombre varchar(80) No
Volcado de datos para la tabla secciones Votos: 0 - Respuestas: 4 - Vistas: 15 Compartir en: Google Facebook Twitter LinkedIn Link
Ejercicio me queda en blanco al verlo en el explorador[Resuelta]
Me estoy orientando con esta pagina: https://www.youtube.com/watch?v=9h8LThKSmeI&list=PLpOqH6AE0tNh2Hu2KWoXxTbhHzRgCaHxH&index=14Tengo un problema, la página me sale en blanco, no encuentro el error, hago la puebra con un archivo echo y me funciona pero desde la base de datos no me sale todo en blanco.
index.php
<?php
require_once "Config/Autoload.php";
Config\Autoload::run();
$est = new Models\Estudiante();
//$est->hola();
//
$est->set("id",1);
$datos = $est->view();
print $datos['nombre'];
?>Conexion.php
<?php
namespace Models;
//es el unico que tiene conexion a la base de datos
class Conexion{
private $datos = array(
"host" => "localhost",
"user" => "root",
"pass" => "",
"db" => "proyecto"
);
private $con;
// colocar antes de mysqli \ por ser una clase global porque estamos usando namespace
public function __construct(){
$this->con = new \mysqli($this->datos['host'],$this->datos['user'],$this->datos['pass'],$this->datos['db']);
}
public function consultaSimple($sql){
$this->con->query($sql);
}
public function consultaRetorno($sql){
$datos = $this->con->query($sql);
return $datos;
}
}
?>Seccion.php
<?php
namespace Models;
class Seccion{
private $id;
private $nombre;
private $con;
public function __construct(){
$this->con = new Conexion();
}
public function set($atributo, $contenido){
$this->$atributo = $contenido;
}
public function get($atributo){
return $this->$atributo ;
}
public function listar(){
$sql ="SELECT * FROM secciones";
$datos = $this->con->consultaRetorno($sql);
return $datos;
}
public function add(){
$sql = "INSERT INTO secciones (id, nombre) VALUES (null,'{$this->nombre}')";
$this->con->consultaSimple($sql);
}
public function delete(){
$sql = "DELETE FROM secciones WHERE id = '{$this->id}'";
$this->con->consultaRetorno($sql);
}
public function edit(){
$sql = "UPDATE FROM secciones SET nombre = '{$this->nombre}' WHERE id ='{$this->id}'";
$this->con->consultaSimple($sql);
}
public function view(){
$sql = "SELECT * FROM secciones WHERE id = '{$this->id}'";
$datos = $this->con->consultaRetorno($datos);
$row = mysqli_fetch_assoc($datos);
return $row;
}
}
?>Autoload.php
<?php namespace Config;
class Autoload {
public static function run() {
spl_autoload_register(function($class) {
$ruta = str_replace("\\", "/", $class) . ".php";
include_once $ruta;
});
}
}
?>Estudiante.php
<?php
namespace Models;
class Estudiante{
private $id;
private $nombre;
private $edad;
private $promedio;
private $imagen;
private $id_seccion;
private $fecha;
//uno que tenga la conexion
private $con;
public function __construct(){
$this->con = new Conexion();
}
public function set($atributo, $contenido){
$this->atributo = $contenido;
}
public function get ($atributo){
return $this->$atributo;
}
//public function hola(){
// echo "hola como estas";
//}
public function listar(){
$sql = "SELECT t1.*, t2.nombre as nombre_seccion FROM estudiantes t1 INNER JOIN secciones t2 ON t1.id_seccion=t2.id";
$datos = $this->con->consultaRetorno($sql);
return $datos;
}
public function add(){
$sql ="INSERT INTO estudiantes(id, nombre, edad, promedio, imagen, id_seccion, fecha )
VALUES(null, '{$this->nombre}','{$this->edad}','{$this->promedio}','{$this->imagen}','{$this->id_seccion}',NOW())";
$this->con->consultaSimple($sql);
}
public function delete(){
$sql = "DELETE FROM estudiantes WHERE id= '{$this->id}'";
$this->con->consultaSimple($sql);
}
public function edit(){
$sql = "UPDATE FROM estudiantes SET nombre = '{$this->nombre}',edad ='{$this->edad}', promedio ='{$this->promedio}',id_seccion = '{$this->id_seccion}'";
$this->con->consultaSimple($sql);
}
public function view() {
$sql ="SELECT t1.*,t2.nombre as nombre_seccion
FROM estudiantes t1 INNER JOIN secciones t2
ON t1.id_seccion = t2.id WHERE t1.id = '{$this->id}'";
$dato = $this->con->consultaRetorno($sql);
$row = mysqli_fetch_assoc($dato);
return $row;
}
}
?>BASE DE DATOS DEL PROYECTO
Estructura de tabla para la tabla estudiantes
Columna Tipo Nulo Predeterminado
id int(11) No
nombre varchar(200) No
edad int(11) No
promedio double No
imagen varchar(200) No
id_seccion int(11) No
fecha datetime No
Volcado de datos para la tabla estudiantes
1 pedro salas 20 15 0 2017-02-28 00:00:00
2 lina ramirez 43 40 no tiene 3 2017-02-14 00:00:00
Estructura de tabla para la tabla secciones
Columna Tipo Nulo Predeterminado
id int(11) No
nombre varchar(80) No
Volcado de datos para la tabla secciones Votos: 0 - Respuestas: 4 - Vistas: 15 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 06-02-2017 18:01:51 Hola Carlos,
Por favor utiliza el BBCode adecuado para el código PHP.
Respecto a tu pregunta no queda claro tu problema. Si no has terminado todo el tutorial lamento decirte que no vas a poder ver nada.
Aunque el tutorial es muy básico, y lleno de malas prácticas, si lo seguiste todo debes tener un código funcional.
Para poderte ayudar más necesitaríamos más información: algún error? Qué dicen tus logs?
Saludos Votos: 3 - Link respuesta -
Fecha: 07-02-2017 11:05:36 Estoy de acuerdo en todo lo comentado por Ernesto
Utiliza el BBCODE para el codigo de PHP para que sea mas legible y entendible, asi como esta presentado creo que nadie se tomara la molestia de leerlo y tomarlo con seriedad.
Al video de youtube tambien hay un BBCODE para insertarlo.
Realiza los cambios en el post por favor.
Por otro lado sobre el tutorial y tus conocimientos para desarrollarlo estoy de acuerdo con lo mencionado con Ernesto
Debes presentar mayor información sobre el error.
Espero que lo tomes a bien y hagas las correcciones necesarias.
Saludos Votos: 2 - Link respuesta -
Fecha: 07-02-2017 18:31:36 muchas gracias a ernesto y walter por esa orientación voy a leer sobre el BBCODE y seguir sus indicaciones cerrare esta pregunta mientras estudio mejor el tema como me indican en caso de necesitar apoyo lo reabriré nuevamente muchas gracias Votos: 0 - Link respuesta
-
Fecha: 11-02-2017 01:07:41 Hola Carlos, solo respondo para saber si ya terminastes el proyecto y si te salio bien?
Espero tu respuesta, Saludos. Votos: 1 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
