ayuda con Sistema de Control de Bodega

Temas que no tengan foro específico
Responder
ealexander19
Mensajes: 53
Registrado: 10 Sep 2009, 02:06
Ubicación: Trujillo - Perú
Contactar:

ayuda con Sistema de Control de Bodega

Mensaje por ealexander19 » 20 Ene 2010, 14:32

hola amigos bueno buscando en la web me encontre con este sistema y quise probarlo pero me da error en la conexion no se si algun experto me puede ayudar a probarlo
les dejo el link para que lo descarguen:http://www.mediafire.com/?grukncocz2k
, gracias de antemano
Saludos
Cuida tu Salud resalta tu Belleza y Gana Dinero en: http://www.negociosaludbelleza.com.ar/

Avatar de Usuario
ignatius
Mensajes: 1297
Registrado: 21 May 2007, 19:47
Ubicación: Capital Federal, Argentina
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ignatius » 20 Ene 2010, 14:38

Hola!

1) Podrías pegar el mensaje de error que te muestra?
2) Podrías pegar la parte donde se configuran los datos de conexión?
y 3) Podrías pegar la parte donde se intenta conectar?

La sugerencia que te doy antes de bajar el archivo es que hagas un "echo" de cada variable antes de la linea donde se intenta conectar para comprobar que no son nulas.

No todos van a querer descargar e instalar un programa solo para avisarte de que falta una coma o algo asi :P

ealexander19
Mensajes: 53
Registrado: 10 Sep 2009, 02:06
Ubicación: Trujillo - Perú
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ealexander19 » 20 Ene 2010, 14:49

jajajaa bueno lo subi por si alguien le interesa el proyecto pero en si a modo de que me ayuden el archivo define.inc.php es el que se tiene que editar si su codigo inicial era este:

Código: Seleccionar todo

<?php
define('DATABASE','evolutions');
define('USUARIO','msdark');
define('PASSWORD','localhost');//DEFINIR LA PASSWORD
define('HOST','localhost');
?>
lo cambie por esto:

Código: Seleccionar todo

<?php
define('DATABASE','evolutions');
define('USUARIO','root');
define('PASSWORD','');//DEFINIR LA PASSWORD
define('HOST','localhost');
?>
bueno el password no tiene porque instale y probe con el wamp luego de eso de cambiar el archivo me bota este mensaje en el navegador:

Fatal error: Uncaught exception 'Exception' with message 'Faltan datos para la conexi&oacute;n a la base de datos<br />Uso: $con = new conDB($db_name,$user,$pass,$host)' in C:\wamp\www\sw2\includes\mysql_class.php:155 Stack trace: #0 C:\wamp\www\sw2\includes\mysql_class.php(113): conDB->error(0) #1 C:\wamp\www\sw2\includes\header.php(32): conDB->__construct('evolutions', 'root', '', 'localhost') #2 C:\wamp\www\sw2\index.php(23): include('C:\wamp\www\sw2...') #3 {main} thrown in C:\wamp\www\sw2\includes\mysql_class.php on line 155

les dejo el codigo del archivo:
mysql_class.php

Código: Seleccionar todo

<?php
/**
 *   Implementa la clase de administracion de una base de datos MySQL
 * 
 * - Archivo que contiene la definicion de la clase conDB, para el manejo
 * de una base de datos MySQL
 * 
 * - Para mayor informacion ver el archivo README.mysql_class dentro del directorio readmes
 * o revisar la documentacion en el directorio docs
 * 
 *   - Copyright 2008 Matias Hernandez Arellano (msdark) <msdark@archlinux.us>
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *   
 *   This program is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 *   GNU General Public License for more details.
 *   
 *   You should have received a copy of the GNU General Public License
 *   along with this program; if not, write to the Free Software
 *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 *   MA 02110-1301, USA.
 * 
 * @author Matías Hernandez (msdark) <msdark@archlinux.us>
 * @copyright Matías Hernandez 03/12/2008
 * @version 0.1
 * @package SCB
 */
class conDB{
/**
 * Hostname de la base de datos
 * @access public
 * @var string
 */
public $host;
/**
 * Usuario de la base de datos
 * @access private
 * @var string
 */
private $user;
/**
 * Password del usuario de la base de datos
 * @access private
 * @var string
 */
private $pass;
/**
 * Nombre de la base de datos a usar
 * @access private
 * @var string
 */
private $db_name;
/**
 * Identificador de la conexión con la base de datos
 * @access private
 * @var resource
 */
private $con;
/**
 * Sentencia SQL a ejecutar
 * @access private
 * @var string
 */
private $sql;
/**
 * Resultado de ejecutar un Query SQL
 * @access private
 * @var string
 */
private $res;
/**
 * Filas obtenidas desde el resultado de un Query SQL
 * @access private
 * @var string
 */
private $row;


/**
 * Constructor de la clas
 * @access public
 * @param string $db_name Nombre de la base de datos
 * @param string $user Nombre de usuario de la base de datos
 * @param string $pass Password de usuario de la base de datos
 * @param string $host Nombre del Host de la base de datos. Por defecto localhost 
 * @return boolean 
 */
public function __construct($db_name,$user,$pass,$host='localhost'){
if(!empty($db_name) && !empty($user) && !empty($pass) && !empty($host)){
$this->host = $host;
$this->user = $user;
$this->pass = $pass;
$this->db_name = $db_name;
$con = @mysql_connect($this->host,$this->user,$this->pass);
if(!$con){
$this->error(1);
return FALSE;
}else{
if(!mysql_select_db($this->db_name)){
$this->error(2);
return FALSE;
}else{
$this->con = $con;
return TRUE;
}
}
}else{
$this->error(0);
return FALSE;
}
}//

/**
 * Muestra el ultimo error ocurrido (si ocurrio) durante la ejecucion
 * @access private
 * @param $error Identificador del error
 */
private function error($error){
$salida='';
if(!$this->con)
$string='';
else
$string = mysql_error($this->con);
switch($error){
case 0:
$salida= "Faltan datos para la conexi&oacute;n a la base de datos<br />";
$salida.= 'Uso: $con = new conDB($db_name,$user,$pass,$host)';
break;
case 1:
$salida= "<strong>Error de conexi&oacute;n</strong><br /><em>".mysql_error()."</em>";
break;
case 2:
$salida= "<strong>Error seleccionando la BD</strong><br /><em>".$string."</em>";
break;
case 3:
$salida= "<strong>Error en la ejecuci&oacute;n de una sentencia SQL</strong><br /><em>".$string."</em>";
break;
case 4:
$salida= "<strong>Error debe ingresar un arreglo tipo diccionario (Clave=>valor)</strong><br />";
$salida.= "$array=array('clave1'=>'valor1','clave2'=>'valor2');";
break;
case 5:
$salida= "<strong>Error obteniendo los resultados de la consulta</strong><br /><em>".$string."</em>";
break;
case 6:
$salida= "<strong>Error obteniendo la cuenta de filas afectadas</strong><br /><em>".$string."</em>";
break;
}
//die($salida);
throw new Exception($salida);
}//

/**
 * Destructor del objeto
 * @access public
 */
public function __destruct(){
if(is_resource($this->res)){
@mysql_free_result($this->res);
$this->sql='';
}
@mysql_close($this->con);
}//

/**
 * Ejecuta una consulta a la base de datos
 * @access public
 * @param string $query Sentencia SQL
 * @return boolean 
 */
public function query($sql){
if(!empty($sql) && is_string($sql)){
$res = @mysql_query($sql,$this->con);
if(!$res){
$this->error(3);
return FALSE;
}else{
$this->res = $res;
return TRUE;
}
}else
return FALSE;
}//

/**
 * Ejecuta una sentencia INSERT en la base de datos
 * @access public
 * @param array $dataArray arreglo que contiene los datos a insertar
 * @param string $tableName nombre de la tabla donde insertar
 * @return boolean 
 */
public function insert($dataArray,$tableName){
$CheckKey=array_keys($dataArray);
if(count($dataArray)>0 && is_string($CheckKey[0])==true){
$this->sql="INSERT INTO ".$tableName." (".implode(",",array_keys($dataArray)).") VALUES(";
foreach($dataArray as $value){
$this->sql.=is_string($value)? "'".mysql_real_escape_string($value, $this->con)."',": $value.",";
}

$this->sql=substr_replace($this->sql,"",-1).")";;
if($this->query($this->sql))
return TRUE;
else
return FALSE;
}
else{
$this->error(4);
return FALSE;
}
}//

/**
 * Ejecuta una sentencia UPDATE a la base de datos
 * @access public
 * @param array $dataArray Arreglo tipo clave=>valor para los campos a actualizar
 * @param string $tableName Nombre de la tabla a actualizar
 * @param string $condition Por defecto null, condicion para la actualizacion (Sin el WHERE)
 * @return boolean 
 */
public function update($dataArray,$tableName,$condition=null){
$CheckKey=array_keys($dataArray);
if(count($dataArray)>0 && is_string($CheckKey[0])==true){
$this->sql="UPDATE ".$tableName." SET ";
foreach($dataArray as $key=>$value){
$this->sql.=$key."=";
$this->sql.=is_string($value)? "'".mysql_real_escape_string($value, $this->con)."',": $value.",";
}
$this->sql=substr_replace($this->sql,"",-1);
if(!is_null($condition)){
$this->sql.=" WHERE ".$condition;
}

if($this->query($this->sql))
return TRUE;
else
return FALSE;
}
else{
$this->error(4);
return FALSE;
}
}//

/**
 * Recupera los resultados de una sentencia SQL
 * @access public
 * @param numeric $type. Identifica el tipo de recuperacion a realizar - 1 = MYSQL_BOTH - 2 = MYSQL_ASSOC (por defecto) - 3 = MYSQL_NUM
 * @return boolean|array False en caso de error, un arreglo con los resultados en caso de exito
 */
public function fetch($type=2){
$fetchType=null;
switch($type){
case 1: 
$fetchType=MYSQL_BOTH;
break;
case 2:
$fetchType=MYSQL_ASSOC;
break;
case 3:
$fetchType=MYSQL_NUM;
break;
default:
$fetchType=MYSQL_ASSOC;
break;
}

 if(!$this->row=@mysql_fetch_array($this->res,$fetchType)){
if(mysql_errno($this->con)>0){
$this->error(5);
return FALSE;
}
}

return $this->row;
}

/**
 * Retorna el numero de filas afectadas por la ultima sentencia SQL
 * @access public
 * @return boolean|numeric False en caso de error, el numero de filas afectadas en caso de exito
 */
public function numRows(){
$num = @mysql_num_rows($this->res);
if(mysql_errno($this->con)>0){
$this->error(6);
return FALSE;
}else
return $num;
}

/**
 * Recorre el arreglo generado por conDB::fetch()
 * retornado cada uno de los valores obtenidos
 * @return true
 */
public function fieldValues(){
foreach($this->fetch() as $key){
echo $key;
}
return true;
}//

}//class
?>

espero me puedan ayudar con el error que me sale
gracias de antemano
Saludos
Cuida tu Salud resalta tu Belleza y Gana Dinero en: http://www.negociosaludbelleza.com.ar/

Avatar de Usuario
ignatius
Mensajes: 1297
Registrado: 21 May 2007, 19:47
Ubicación: Capital Federal, Argentina
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ignatius » 20 Ene 2010, 14:56

Ahi lo voy a revisar... insertaste el archivo 'constructor.sql' en la DB?

ealexander19
Mensajes: 53
Registrado: 10 Sep 2009, 02:06
Ubicación: Trujillo - Perú
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ealexander19 » 20 Ene 2010, 15:00

claro lo importe en el phpmyadmin del wamp son 22 tablas
Cuida tu Salud resalta tu Belleza y Gana Dinero en: http://www.negociosaludbelleza.com.ar/

Avatar de Usuario
ignatius
Mensajes: 1297
Registrado: 21 May 2007, 19:47
Ubicación: Capital Federal, Argentina
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ignatius » 20 Ene 2010, 15:11

A mi me dio error la importación y eso que uso Ubuntu y MySQL en teoría esta actualizado.

El problema está en la clase que conecta con la base de datos (mysql_class.php), en la linea 94 dice:

Código: Seleccionar todo

if(!empty($db_name) && !empty($user) && !empty($pass) && !empty($host)){
por lo que si o si es necesario usar un password, podes cambiar tu contraseña de root, o cambiar esa linea por:

Código: Seleccionar todo

if(!empty($db_name) && !empty($user) && !empty($host)){
con la que ya podrías usar un password vacio.

ealexander19
Mensajes: 53
Registrado: 10 Sep 2009, 02:06
Ubicación: Trujillo - Perú
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ealexander19 » 20 Ene 2010, 17:00

hola nicolas si es verdad era eso ahora me surgio un problema y es que al logearme para entrar al sistema necesito el Rut de Usuario y contraseña que estan en la bd pero la contraseña esta en md5 como podria hacer para saber la contraseña porque en el rut no hay problema se ve en la bd lo malo es en el pass esta encriptado con md5 al parecer que podria hacer para poder logearme, gracias de antemano
Saludos
Cuida tu Salud resalta tu Belleza y Gana Dinero en: http://www.negociosaludbelleza.com.ar/

ealexander19
Mensajes: 53
Registrado: 10 Sep 2009, 02:06
Ubicación: Trujillo - Perú
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ealexander19 » 20 Ene 2010, 18:47

bueno ya solucione mi problema acabo de encontrar un coversor de normal a md5 se los dejo es este:
http://md5.gromweb.com
gracias por toda la ayuda ahora is puedo entrar al sistema
Saludos
Cuida tu Salud resalta tu Belleza y Gana Dinero en: http://www.negociosaludbelleza.com.ar/

Avatar de Usuario
ignatius
Mensajes: 1297
Registrado: 21 May 2007, 19:47
Ubicación: Capital Federal, Argentina
Contactar:

Cambiando un password en MD5

Mensaje por ignatius » 20 Ene 2010, 19:49

Una forma fácil y que no depende de una base de datos de hash(s/es) de MD5 es usando el phpMyAdmin (adjunto la imagen), es poniendo en el select funcion MD5 y cambiando la parte de texto por el password nuevo.

Sino la version en SQL sería:

Código: Seleccionar todo

UPDATE `usuarios` SET `password` = MD5( '123456' ) WHERE `usuarios`.`rut` = '16269906-7';
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.

ealexander19
Mensajes: 53
Registrado: 10 Sep 2009, 02:06
Ubicación: Trujillo - Perú
Contactar:

Re: ayuda con Sistema de Control de Bodega

Mensaje por ealexander19 » 20 Ene 2010, 20:20

hola nicolas el atributo funcion no me muestra en mi phpmyadmin o es que se debe de activar de alguna forma para que me aparezca y poder seleccionar md5, gracias
Saludos
Cuida tu Salud resalta tu Belleza y Gana Dinero en: http://www.negociosaludbelleza.com.ar/

Responder