Queridos lectores hoy les traigo en lo que estube trabajando durante 3 semanas, en tiempos libres me puse a jugar un rato con python y mysql
trata sobre llevar el control de clientes, orientado mas a servicios informaticos si tienen un negocio asi aprobechenlo descarguen el codigo y la bd y por cualquier dudo estamos asus ordenes.
CODIGO DE OMSICLIENT
#! /usr/bin/env python
# -*- coding: utf8 -*-
#*** este codigo podra distribuirse y modificarse siempre y cuando respecte
#la autoria.
import time
import os
import sys
import string
import MySQLdb
#**********************************************************OMSI***********************************************************
def conexionBd():
HOST = "localhost"
USER = "aqui va usuario de bd"
PASSWD = "aqui va contraseña de bd"
BD = "Nombre de la BD"
try:
conectar = MySQLdb.connect(HOST, USER, PASSWD)
conectar.select_db(BD)
except MySQLdb.Error, e:
print "Error: base de datos no encontrado...",e
menu = raw_input()
os.system("clear")
opcUsuario()
return conectar
#**********************************************************OMSI***********************************************************
def funRegistrar(conectar):
print "\n\nIntroduzca los datos:\n"
nombre = raw_input("Nombre: ")
apellido = raw_input("Apellido:")
calle = raw_input("Calle:")
colonia = raw_input("Colonia:")
pueblo = raw_input("Pueblo:")
email = raw_input("Email:")
telefono = raw_input("Telefono:")
cantidad_pc = raw_input("Cantidad PC:")
marca = raw_input("Marca:")
modelo = raw_input("Modelo:")
color = raw_input("Color:")
fallos = raw_input("Fallos:")
cursor = conectar.cursor()
sql = "INSERT INTO contactos (nombre,apellido,calle,pueblo,email,telefono,cantidad_pc,marca,modelo,color,fallos,colonia) VALUES ('"+nombre+"','"+apellido+"','"+calle+"','"+pueblo+"','"+email+"','"+telefono+"','"+cantidad_pc+"','"+marca+"','"+modelo+"','"+color+"','"+fallos+"','"+colonia+"')"
try:
cursor.execute(sql)
conectar.commit()
except MySQLdb.Error, e:
print "Erro: " + sql
print e
print "Datos guardados correctamente."
conectar.close()
menu = raw_input()
os.system("clear")
opcUsuario()
#**********************************************************OMSI***********************************************************
def funConsultar(conectar):
nombre = raw_input("\nIntroduzca un nombre para la búsqueda: ")
nombre = (nombre.upper())
cursor = conectar.cursor()
sql="SELECT * FROM contactos WHERE nombre='"+nombre+"'"
resultados = 0
try:
cursor.execute(sql)
resultado = cursor.fetchall()
for datos in resultado:
ide = datos[0]
nombre = datos[1]
apellido = datos[2]
telefono = datos[6]
cantidad_pc = datos[7]
marca = datos[8]
modelo = datos[9]
fallos = datos[11]
fecha = datos[13]
resultados= int(resultados)
resultados = resultados + 1
print"\n----------------------------\n"
print " ID: %s\n Nombre: %s %s\n Telefono: %s\n cantidad_pc: %s\n Marca: %s\n Modelo: %s\n Fallos: %s\n fecha Registro: %s"%(ide, nombre, apellido, telefono, cantidad_pc, marca, modelo, fallos, fecha)
conectar.commit()
except MySQLdb.Error, e:
print "Erro: " + sql
print e
print "\n\nSe ha encontrado %d resultados"%resultados
conectar.close()
menu = raw_input()
os.system("clear")
opcUsuario()
#**********************************************************OMSI***********************************************************
def funModificar(conectar):
print "\n\nDigite sus datos:\n"
ide = raw_input("ID de contactos a Modificar: ")
nuevo_nombre = raw_input("Nuevo nombre: ")
nuevo_nombre = (nuevo_nombre.upper())
cursor = conectar.cursor()
sql = "UPDATE contactos SET nombre='"+nuevo_nombre+"' WHERE id='"+ide+"'"
try:
cursor.execute(sql)
conectar.commit()
except MySQLdb.Error, e:
print "Erro: " + sql
print e
print "La modficacion se ha realizado correctamente."
conectar.close()
menu = raw_input()
os.system("clear")
opcUsuario()
#**********************************************************OMSI***********************************************************
def funEliminar(conectar):
print "\n\nIntroduzca sus datos:\n"
ide_eliminar = raw_input("ID a Eliminar: ")
cursor = conectar.cursor()
sql = "DELETE FROM contactos WHERE id='"+ide_eliminar+"'"
try:
cursor.execute(sql)
conectar.commit()
except MySQLdb.Error, e:
print "Erro: " + sql
print e
print "La eliminacion a sido completado."
conectar.close()
menu = raw_input()
os.system("clear")
opcUsuario()
#**********************************************************OMSI***********************************************************
def funMostrarTodos(conectar):
resultados = 0
cursor = conectar.cursor()
sql="SELECT * FROM contactos;"
try:
cursor.execute(sql)
resultado = cursor.fetchall()
for datos in resultado:
ide = datos[0]
nombre = datos[1]
direccion = datos[2]
email = datos[3]
telefono = datos[4]
resultados= int(resultados)
resultados = resultados + 1
print"----------------------------------"
print " ID: %s\n Nombre: %s\n Direccion: %s\n Email: %s\n Telefono: %s"%(ide, nombre, direccion, email, telefono)
conectar.commit()
except MySQLdb.Error, e:
print "Erro: " + sql
print e
print "\n\n encontrados %d resultados"%resultados
conectar.close()
menu = raw_input()
os.system("clear")
opcUsuario()
#**********************************************************OMSI***********************************************************
def opcUsuario():
os.system("clear");
print (80 * '=')
print "=======OMSICLIENT V.1========"
print (80 * '=')
opc = raw_input("Seleccione la opcion deseada\n\n[1] - Registrar\n[2] - Consultar\n[3] - Modificar\n[4] - Eliminar\n[5] - Mostrar Todos\n[6] - Salir\n")
try:
opc = int(opc)
if opc<1 opc="" or="">6:
os.system("clear");
print "Opcion invalida: Verifique el valor insertado"
time.sleep(2)
opcUsuario()
except:
os.system("clear");
print "Opcion invalida: Verifique el valor insertado"
time.sleep(2)
opcUsuario()
if opc == 1:
conectar = conexionBd()
funRegistrar(conectar)
elif opc == 2:
conectar = conexionBd()
funConsultar(conectar)
elif opc == 3:
conectar = conexionBd()
funModificar(conectar)
elif opc == 4:
conectar = conexionBd()
funEliminar(conectar)
elif opc == 5:
conectar = conexionBd()
funMostrarTodos(conectar)
elif opc == 6:
sys.exit()
#**********************************************************OMSI***********************************************************
if __name__=='__main__':
opcUsuario()
BASE DE DATOS DE LA APLIACION 1>
--
-- Base de datos: `agenda`
CREATE TABLE IF NOT EXISTS `contactos` (
`id` int(10) unsigned NOT NULL,
`nombre` varchar(80) COLLATE utf8_spanish_ci NOT NULL,
`apellido` varchar(150) COLLATE utf8_spanish_ci NOT NULL,
`calle` varchar(150) COLLATE utf8_spanish_ci NOT NULL,
`pueblo` varchar(150) COLLATE utf8_spanish_ci NOT NULL,
`email` varchar(40) COLLATE utf8_spanish_ci NOT NULL,
`telefono` int(15) NOT NULL,
`cantidad_pc` int(15) NOT NULL,
`marca` varchar(80) COLLATE utf8_spanish_ci NOT NULL,
`modelo` varchar(80) COLLATE utf8_spanish_ci NOT NULL,
`color` varchar(80) COLLATE utf8_spanish_ci NOT NULL,
`fallos` text COLLATE utf8_spanish_ci NOT NULL,
`colonia` varchar(200) COLLATE utf8_spanish_ci DEFAULT NULL,
`fecha` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=1 ;
ESERO Y LES GUSTE CUALQUIER DUDA PODRAN CONTACTARME POR FACEBOOK
O POR SKYPE:omsi.org.mx
si necesitan el codigo original mandeme un mensaje y se lo envio completo saludos y bendiciones