Después de descargar CodeIgniter, lo descomprimimos en la carpeta htdocs de Xampp, lo renombramos como cart y ya podremos acceder a la instalación de CodeIgniter, verificamos escribiendo en la barra de dirección del navegador : http://localhost/cart/ Empecemos por configurar Codeigniter, los archivos que se van a modificar son: autoload.php, config.php y database.php, estos los encontramos en: cart/application/config/
En el archivo config.php, por la linea 17 definimos la base url:
$config['base_url'] = 'http://localhost/cart/';en este mismo archivo por la linea 29 quitamos el index.php:
$config['index_page'] = '';luego creamos un .htaccess en el directorio principal: cart/
Código de .htaccess
<IfModule mod_rewrite.c>así quitamos el index.php que viene incluido por defecto en la URL, de este modo para acceder a algún controlador escribimos:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /cart/index.php/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /cart/index.php
</IfModule>
http://localhost/cart/controlador/métodoen lugar de:
http://localhost/cart/index.php/controlador/métododebemos tener en cuenta que para que esto funcione debe estar activado el mod_rewrite en el servidor. Pasemos ahora a definir la conexión a la base de datos, vamos a cart/application/config/ abrimos database.php y definimos las lineas 51 - 54 :
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'cart';
Creamos la base de datos en phpmyadmin:
CREATE TABLE IF NOT EXISTS `productos` (En: cart/application/config/ abrimos autoload.php y por la linea 55 cargamos la base de datos :
`id` int(11) NOT NULL AUTO_INCREMENT,
`marca` varchar(50) COLLATE utf8_spanish_ci NOT NULL,
`pantalla` varchar(20) COLLATE utf8_spanish_ci NOT NULL,
`ram` varchar(50) COLLATE utf8_spanish_ci NOT NULL,
`procesador` varchar(50) COLLATE utf8_spanish_ci NOT NULL,
`disco_duro` varchar(20) COLLATE utf8_spanish_ci NOT NULL,
`precio` double(11,0) NOT NULL,
`opcion` varchar(50) COLLATE utf8_spanish_ci NOT NULL,
`valores` varchar(200) COLLATE utf8_spanish_ci NOT NULL,
`imagen` varchar(100) COLLATE utf8_spanish_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=8 ;
INSERT INTO `productos` (`id`, `marca`, `pantalla`, `ram`, `procesador`, `disco_duro`, `precio`, `opcion`, `valores`, `imagen`) VALUES
(1, 'Samsung', '14''', '4 Gb', 'Core i3', '300 Gb', 990000, 'color', 'blanco,verde,morado,negro', 'pc_1.jpg'),
(2, 'Lenovo', '10''', '3 Gb', 'Intel Pentium', '750 Gb', 1100000, 'color', 'negro,verde,morado,', 'pc_2.jpg'),
(3, 'Portatil Mac', '14''', '4 Gb', 'Core i3', '500 Gb', 1000000, 'color', 'blanco,verde,morado,negro', 'pc_3.jpg'),
(4, 'Compaq', '10''', '2 Gb', 'AMD', '300 Gb', 700000, 'color', 'negro,verde,morado', 'pc_4.jpg'),
(5, 'Sony Vaió', '14''', '4 Gb', 'Core i3', '500 Gb', 1000000, 'color', 'morado,negro', 'pc_5.jpg'),
(6, 'Hewlet Packart', '14''', '4 Gb', 'Core i3', '500 Gb', 990000, 'color', 'blanco,verde,morado,negro', 'hp_1.jpg'),
(7, 'Sony Vaió', '18''', '3 Gb', 'Intel Pentium', '500 Gb', 650000, '', '', '');
$autoload['libraries'] = array('database');Enseguida creamos un controlador, un modelo y una vista. El modelo lo llamamos: products_model.php, al controlador: products.php y la vista: products_view.php. Dentro de: cart/application/controllers/ guardamos products.php, en cart/application/models/ creamos products_model.php y en: cart/application/views/ ubicamos products_view.php
Código del controlador products.php:
<?php
class Products extends CI_Controller {
function __construct() {
parent::__Construct();
$this ->load->model('Products_Model'); // Cargamos el Modelo
}
public function index(){
$data['title']='Computadores Portatiles';
$data['results']= $this->Products_Model->get_products();
$this->load->view('products_view',$data);
}
}
código del modelo products_model.php
<?php
class Products_Model extends CI_Model {
public function get_products(){
$this->db->order_by('marca', 'asc');
$query = $this->db->get('productos')->result();
return $query;
}
}
código de la vista products_view.php
<!DOCTYPE html>por último en: cart/application/config/, abrimos routes.php y en la linea 41 definimos el controlador que va a cargar por defecto. $route['default_controller'] = "products";
<html lang="es">
<head>
<meta charset="utf-8" />
<title><?php echo $title; ?></title>
</head>
<body>
<h1 align="center">Registros de la Bd con Codeigniter</h1>
<h3 align="center">
<?php foreach($results as $result) {
echo $result->marca." ";
echo $result->procesador." ";
echo $result->disco_duro."<br>";
}
?>
</h3>
</body>
</html>
Descargar Archivos del Tema 1
hola. puedes decirme como subir el proyecto a un hosting. he seguido el curso y va muy bien pero quiero saber como subirlo a un hosting para futuros desarrollos que realice
ResponderBorrarHola Javier,
ResponderBorrarmuchas gracias por el comentario.
la verdad no me queda mucho tiempo para dedicarle al blog; voy a ver si hago un post
sobre como subir un proyecto a un hosting, pero en todo caso en Internet se encuentran muchos tutoriales sobre esto, tambièn en youtu
pero es cosa tomar todo y ponerlo en en public html?luego configurar la base de datos o no? y poner el url base?
ResponderBorrar