sábado, 7 de diciembre de 2013

Redes - Estándares Ethernet


  • Ethernet = velocidad de 10 Mbit/s (megabits por segundo). Ethernet define las características de cableado y señalización de nivel físico y los formatos de tramas de datos del nivel de enlace de datos del modelo OSI.
  • Fast Ethernet = velocidad de 100 Mbps (megabits por segundo). El nombre Ethernet viene del concepto físico de ether. En su momento el prefijo fast se le agregó para diferenciarla de la versión original Ethernet de 10 Mbps.
  • Gigabit Ethernet = también conocida como GigaE, que consigue una capacidad de transmisión de 1 gigabit por segundo, correspondientes a unos 1000 megabits por segundo de rendimiento.
  • 10-gigabit Ethernet (XGbE o 10GbE) =  con una velocidad nominal de 10 Gbit/s, diez veces más rápido que gigabit Ethernet.

En Redes ¿Qué es NIC?

NIC viene del inglés Network Interface Card, o tarjeta de interfaz de red.

Un ejemplo de una tarjeta de interfaz de red

Es un dispositivo que conecta físicamente una computadora a una red. Esta conexión permite la comunicación con las impresoras, routers, computadoras, modems u otros. 

sábado, 2 de noviembre de 2013

Sacar Tarjeta Paypal en Honduras

PayPal es un procesador de pagos que nos facilita realizar compras por Internet. Cada vez son más los sitios web que aceptan PayPal como forma de pago. PayPal nos permite comprar sin tener que introducir nuestros números de tarjeta de crédito o débito cada vez que hacemos una compra.
PayPal también nos permite recibir dinero en nuestra cuenta de PayPal y acreditarlo a nuestra tarjeta de crédito o débito Visa de Honduras. Esta es una opción que hace algunos días se abrió para Honduras, anteriormente solo se podía hacer pagos, ahora también podemos recibirlos.

Cómo pagar con PayPal en Honduras

Abrir una cuenta en PayPal es fácil, solo necesitamos ir al sitio web de PayPal y llenar los campos requeridos. Necesitaremos una tarjeta de crédito o débito que tenga un número de confirmación en la parte de atrás para realizar pagos en línea. Es preferible utilizar una tarjeta Visa, ya que esta nos permitirá recibir pagos en nuestra cuenta de PayPal.
La tarjeta de débito Visa de Banco Atlántida y la de BanPais no funcionan con PayPal, porque no tiene un número de verificación en la parte de atrás. Es preferible utilizar una tarjeta de débito de Banco Ficohsa. Al menos, esa es la tarjeta que yo he utilizado con éxito, no puede dar fe de las tarjetas de otros bancos.
Se pueden utilizar tarjetas de débito con cuentas en dólares o en lempiras, aunque considero que resulta más conveniente utilizar una cuenta en dólares, ya que la mayoría de los pagos en Internet se hacen en dólares. PayPal cobra una tarifa por cambio de divisa.

Cómo verificar una cuenta de PayPal

PayPal pide que verifiquemos nuestra cuenta para mayor seguridad de los vendedores. Verificar nuestra cuenta nos permitirá eliminar el límite en los pagos que podemos hacer.
Verificar nuestra cuenta es fácil. Hacemos clic en el enlace de verificar la cuenta, seguimos el proceso indicado y se nos hará un cargo en nuestra tarjeta por el valor de US $1.95 o su equivalente en moneda nacional. Después revisamos nuestro estado de cuenta y buscamos el código de cuatro dígitos asociado con este cargo, introducimos el código en nuestra cuenta de PayPal y ya tendremos verificada nuestra cuenta. Después de verificada la cuenta nos acreditarán el cargo que nos hicieron.

PayPal para vender en línea

Con una cuenta personal de PayPal podemos enviar y recibir dinero en Internet, pero los que se dedican a vender por Internet necesitarán una cuenta Premier o Business. La primera es para vendedores individuales y la segunda es para empresas.
Regístrate en PayPal y empieza a aceptar pagos con tarjeta de crédito instantáneamente.
Para más información sobre compras online ver mi artículo sobre Cómo Comprar por Internet en Honduras.

Información extraida de: Nacer en Honduras

viernes, 1 de noviembre de 2013

Fácil, botón para abrir PDF con Visual Basic (VB) .Net

Primero debe crear las siguientes instancias:
Dim loPSI As New ProcessStartInfo
Dim loProceso As New Process

Dentro del botón debe poner el siguiente código:
loPSI.FileName = "C:\Users\Guevara\Downloads\Dominio DDD Documento_completo.pdf"

Try
    loProceso = Process.Start(loPSI)
Catch Exp As Exception
     MessageBox.Show(Exp.Message, "Se produjo un error, consulte con soporte", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Try

sábado, 19 de octubre de 2013

Error Visual Basic 2010 (VB2010) .Net - crdb_adoplus.dll

"Could not load file or assembly 'file:///C:\Program Files\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll' or one of its dependencies. The system cannot find the file specified."

cuando aparece el error de que el crystal report no encuentra la libreria: crdb_adoplus.dll

la solución es poner en el app.config del proyecto useLegacyV2RuntimeActivationPolicy="true", tal como sale a continuación:

<startup useLegacyV2RuntimeActivationPolicy="true"><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>

miércoles, 11 de septiembre de 2013

Crear un login para varias paginas en PHP, para Usuario y Administrador

1) creas una pagina y pones este codigo

<form action="Contenido/Direccionar.php" method="POST" target="" style="padding:5px;">
                <br /> <?php echo "<strong>Admin Hondutel</strong>"; ?> <br /> <br /> 
                Usuario:<input name="nick" type="text" id="nick" maxlength="20"><br /> <br /> 
                Contraseña:<input name="Contrasena" type="password" size="20" onKeyPress="capLock(event)" maxlength="15"/> <br /> <br /> 
                Salas: <select name="Salas10">
                <option value="0">Seleccione una Sala</option>
                <option value="1">Pagina1</option>
                <option value="2">Pagina2</option>
                <option value="3">Pagina3</option>
                </select><br /> 
                <div id="caplock" style="visibility:hidden; background-color:#FFFF00;">El bloqueo de mayúsculas está activado</div> 
                <input name="" value="Ingresar" type="submit" />
</form>

2) Creas una carpeta llamada "Contenido"
3) Creas el archivo Direccionar.php dentro de la carpeta "Contenido". Direccionar.php contiene el siguiente codigo:

<?php $user=addslashes($_POST['nick']); $Salas10=addslashes($_POST['Salas10']); //condicion que permite crear una sesion solo si se elige una sala if($Salas10 != 0){ session_start();//siempre iniciar sesion //asignar valores a las variables de sesion $_SESSION['usuario'] = $_POST["nick"]; } //condicion que permite crear variable para guardar la contraseña unicamente si esta existe if (!empty($_POST['Contrasena'])){ $Contrasena=addslashes($_POST['Contrasena']); } ?> <?php if($Salas10 == 0){?> <form name='miFormulario' method='POST' action='../chat.php'> </form> <?php }?> <?php if($Salas10 == 1){?> <form name='miFormulario' method='POST' action='Pagina1.php'> <?php if (!empty($_POST['Contrasena'])){?> <input name='Contrasena' type='hidden' value='<?php echo $Contrasena; ?>' /> <?php }?> <input name='nick' type='hidden' value='<?php echo $user; ?>' /> </form> <?php }?> <?php if($Salas10 == 2){?> <form name='miFormulario' method='POST' action='Pagina2.php'> <?php if (!empty($_POST['Contrasena'])){?> <input name='Contrasena' type='hidden' value='<?php echo $Contrasena; ?>' /> <?php }?> <input name='nick' type='hidden' value='<?php echo $user; ?>' /> </form> <?php }?> <?php if($Salas10 == 3){?> <form name='miFormulario' method='POST' action='Pagina3.php'> <?php if (!empty($_POST['Contrasena'])){?> <input name='Contrasena' type='hidden' value='<?php echo $Contrasena; ?>' /> <?php }?> <input name='nick' type='hidden' value='<?php echo $user; ?>' /> </form> <?php }?> <!--- este script permite enviar los datos del formulario sin que exista un boton----> <script language="JavaScript"> document.miFormulario.submit() </script>

4) creas 3 paginas y las nombras Pagina1.php, pagina2.php y Pagina3.php
5) en cada una de las paginas creas los Query o consultas que usarias para verificar que es el usuario correcto. Si te fijas en el codigo anterior ya esta escrito donde se debe crear la sesión, pero para saber mas abre el siguiente link: http://happystudy-alextkd.blogspot.com/2013/03/abrir-y-cerrar-sesion-con-php-login.html

6) No olvides crear una base de datos y el php de conexion a la base de datos.

miércoles, 28 de agosto de 2013

PHP - Código para copiar una imagen en una carpeta a parte

Este código es de lo más sencillo, sin usar base de datos.

Antes que todos hay que tener en cuenta que este código no copia solo imágenes, sino que cualquier tipo de archivo gif, pdf, jpg.


Esta primera parte del código es la que recibe y separa la información del archivo. En php se usan  ["name"] y  ["tmp_name"]  la primera para obtener el nombre del archivo y la segunda para obtener la ubicación actual del archivo. También existen otros como [“zise”] que es para sacar el tamaño del archivo, por ejemplo 2 k ó 3 MB, pero en estos momentos no vamos a usar este ultimo, ningún otro.

<?php
$nombrefoto = $_FILES["archivo"]["name"];
$ruta = $_FILES["archivo"]["tmp_name"]; //localizacion actual del archivo
$destino = "Images/Solicitudes de Anuncios/".$nombrefoto; //lugar en el que se quiere copiar
copy($ruta, $destino);//es para realizar la copia del archivo
?>

Y la segunda parte del código es para los botones con los que se va a obtener el archivo a subir, lo más importante de este código se los pondré sombreado.

<form action="" method="post" enctype="multipart/form-data" target="" style="padding:5px;">
      Imagen: <input type="file" name="archivo" />
     <div style="margin-left: 70px;"><input name="" value="Subir Imagen" type="submit" /></div>
</form>

Nota: en este caso como todo esto lo estoy haciendo en una sola php, pongo action=""… pero si lo hiciera en una php a parte pondría action="Nombre_de_Pagina.php"

miércoles, 17 de julio de 2013

Poner valor en un Textbox con un Query o Consulta - Visual Basic

Nota: Antes que todo debe existir un origen de datos o Data Source (una conexión a la base de datos).
  • Deben asegurarse que cuentan con la herramienta "Mostrar origenes de datos" ó "Show Data Source".


  •  Una vez que hayan abierto la herramienta se verán las tablas y campos contenidos en su DataSet.


  •  Luego lo que se debe de hacer es arrastrar uno de los campo que está en el "Origen de datos" a un Textbox. El campo puede ser cualquiera pero debe pertenecer a la tabla de la cual queremos obtener el valor. como se muestra en la siguiente imagen:


  •  Eso permitira que se creen el "DataSet", "BindingSource", "TableAdapter" y el "TableAdapterManager" en el formulario (Form1).


  • Una vez que ya se han creado dichos recursos, se eliminará el textbox donde pusimos el campo del "Origen de datos" y será reemplazado por uno que no este enlazado con la base de datos. 
  • Una vez hecho lo anterior, podemos iniciar a programar. Pueden poner el siguiente codigo en un boton:
           'La variable Query contiene la definición de la consulta, no los resultados de ejecutarla.
            Dim Query = From Empleado In BasedeDatosEmpleadosDataSet.Jefe
                    Where Empleado.EmpleadoID = TextBox1.Text
                    Select Empleado

            'Un mecanismo habitual para ejecutar una consulta es un bucle For Each. Se tiene acceso a cada 
            'elemento de la secuencia devuelta a través de la variable de iteración del bucle.
            For Each Record In Query
                TextBox2.Text = Record.NomEmp
                TextBox3.Text = Record.PuestoEmp
            Next

jueves, 11 de julio de 2013

Error de sintaxis (falta operador) en la expresión de consulta

Caso 
Supongamos que queremos buscar el nombre de un empleado usando su ID, por medio de un query parecido al siguiente:
SELECT Nombre. FROM Empleado WHERE (((Empleado.EmpID)  = "123"));

Problema
Nos muestra un mensaje que dice "Error de sintaxis (fanta operador) en la expresión de consulta 'Nombre'" y no podemos obtener un resultado.

Solución
El problema esta relacionado con el nombre del campo, posiblemente hayamos puesto por error un punto despues del nombre del campo. El punto puede ser usado pero solo si lo ponemos antes del nombre del campo y con el nombre de la tabla antes del punto, como en el siguiente ejemplo:
SELECT Empleado.Nombre FROM Empleado WHERE (((Empleado.EmpID)  = "123"));

por lo tanto puede ser escrito de dos formas:
  • Sin ningun punto: SELECT Nombre FROM Empleado WHERE (((Empleado.EmpID)  = "123"));
  • ó siguiendo el orden "Tabla-Punto-Campo":                                                                            SELECT Empleado.Nombre FROM Empleado WHERE (((Empleado.EmpID)  = "123"));

lunes, 17 de junio de 2013

Error con el crdb_adoplus.dll (Crystal Reports y Framework 4)

Si por alguna razon les sale el siguiente error:“Could not load file or assembly ‘file:///C:\Program Files\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll’ or one of its dependencies. The system cannot find the file specified.”

Lo que deben hacer es agregar el el app.config el siguiente codigo:
useLegacyV2RuntimeActivationPolicy="true"

les quedará de la siguiente manera:
<startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>

</startup>

Parece que Microsoft ha cambiado el procedimiento vinculante y este valor cambiará eso.

Esta información ha sido sacada de la siguiente dirección:

jueves, 6 de junio de 2013

Abreviaturas para los nombres de los objetos de Visual Basic (VB) 2010

Las siguientes tablas definen los prefijos de nombres de objeto estándar de MCS. Estos prefijos son coherentes con las documentadas en la Guía de programadores de Visual Basic.

Prefix    Object Type                           Example
-------------------------------------------------------
ani       Animation button                      aniMailBox
bed       Pen Bedit                             bedFirstName
cbo       Combo box and drop down list box      cboEnglish
chk       Checkbox                              chkReadOnly
clp       Picture clip                          clpToolbar
cmd (3d)  Command button (3D)                   cmdOk (cmd3dOk)
com       Communications                        comFax
ctr       Control (when specific type unknown)  ctrCurrent
dat       Data control                          datBiblio
dir       Directory list box                    dirSource
dlg       Common dialog control                 dlgFileOpen
drv       Drive list box                        drvTarget
fil       File list box                         filSource
frm       Form                                  frmEntry
fra (3d)  Frame (3d)                            fraStyle (fra3dStyle)
gau       Gauge                                 gauStatus
gpb       Group push button                     gpbChannel
gra       Graph                                 graRevenue
grd       Grid                                  grdPrices
hed       Pen Hedit                             hedSignature
hsb       Horizontal scroll bar                 hsbVolume
img       Image                                 imgIcon
ink       Pen Ink                               inkMap
key       Keyboard key status                   keyCaps
lbl       Label                                 lblHelpMessage
lin       Line                                  linVertical
lst       List box                              lstPolicyCodes
mdi       MDI child form                        mdiNote
mpm       MAPI message                          mpmSentMessage
mps       MAPI session                          mpsSession
mci       MCI                                   mciVideo
mnu       Menu                                  mnuFileOpen
opt (3d)  Option Button (3d)                    optRed (opt3dRed)
ole       OLE control                           oleWorksheet
out       Outline control                       outOrgChart
pic       Picture                               picVGA
pnl3d     3d Panel                              pnl3d
rpt       Report control                        rptQtr1Earnings
shp       Shape controls                        shpCircle
spn       Spin control                          spnPages
txt       Text Box                              txtLastName
tmr       Timer                                 tmrAlarm
vsb       Vertical scroll bar                   vsbRate


lunes, 29 de abril de 2013

Introduzca el valor del parámetro, Access 2007


Caso
Posiblemente quieran modificar un campo de su tabla en una base de datos en Access, por medio de un Query o consulta, parecido a los siguientes:
UPDATE Empleado SET Empleado.DATNOM = Rosa WHERE Empleado.EmpNum="321";
UPDATE Empleado SET Empleado.DATNOM = Rosa WHERE Empleado.EmpNum=321;

Problema
Pero para modificar su campo deben escribir nuevamente el valor o conjunto de caracteres, con el cual usted quiere modificar su campo, pues le sale una ventana que dice “Introduzca el valor del parámetro”…  se preguntará ¿porqué debo ingresar el parámetro de nuevo, si ya lo puse en el Query?



Solución
Para poder realizar los cambios sin que te vuelva a tirar ese mensaje, debes corregir tu query pues seguramente no está escrito correctamente. A continuación te daré una serie de pasos que te van a ayudar a corregir tu Query de una forma sencilla:
1.       Te tienes que ir a la vista Diseño de tu Query.

2.       Una vez que estés en la “vista diseño” podrás notar que se te presenta tu mismo Query solo que de otro modo…. Ahora solo le pondrás un par de comillas dobles donde está tu valor a actualizar, es decir al lado derecho de donde dice “Actualizar a:”… en mi caso va a quedar como: “Rosa”.                       


3.       En la imagen anterior salía solo Rosa y en esta imagen ya sale con comillas, luego lo ejecutamos dando click en el signo de admiración rojo.


4.       Al darle ejecutar nos saldrá el siguiente mensaje en el que nos pregunta si queremos actualizar, le damos click en el botón que dice “Si”.

5.       Ahora que ya hemos hecho esto si abren la tabla podrán ver que si se han cambiado los datos… siguiendo con la consulta, el siguiente paso es ir a la vista SQL.

6.       Si observan ahora el Query o consulta sale corregido y se verá como lo siguiente:

UPDATE Empleado SET Empleado.DATNOM = "Rosa" WHERE (((Empleado.EmpNum)=321));

7.       Para muchos resultara más complejo de lo que se imaginaban, pero ahora ya saben 2 formas de hacer Query, uno es en Vista Diseño y otro en Vista SQL.

No coinciden los tipos de datos en la expresión de criterios - Access 2007


Caso
Suponiendo que queremos actualizar una tabla llamada “Empleado” y le queremos cambiar un campo, por medio de un Query parecido al siguiente:
UPDATE Empleado SET Empleado.DATNOM = 'Lucia' WHERE (((Empleado.EmpNum)='321'));

Problema
Pero nos muestra el siguiente mensaje, “No coinciden los tipos de datos en la expresión de criterios”. Muchos muy posiblemente no comprendan a que se refiere este mensaje.



Solución
El problema en este caso es el Query, por un detalle muy pequeño pero con un gran peso. El problema son las comillas de la condición… verán que si le quitan las comillas ese mensaje desaparecerá. El Query escrito correctamente les deberá quedar asi:
UPDATE Empleado SET Empleado.DATNOM = 'Lucia' WHERE (((Empleado.EmpNum)=321));

Visual Basic
Ó posiblemente esten trabajando con visual basic y les tire ese mismo error, entonces igual deben quitar las comillas (puede que en vez de quitarlas haya que ponerlas).
SELECT Nomb FROM Empleado WHERE (((Empleado.EmpNum)= " & Trim(TextBox3.Text) & "));

viernes, 22 de marzo de 2013

Abrir y cerrar sesión con PHP ( Login / Logout )

El siguiente código se pone cuando se está ingresando en la sesión, que es donde se le pone un nombre a dicha sesión.

session_start();//siempre iniciar sesion

//asignar valores a las variables de sesion
$_SESSION['usuario']= $_POST["Telefono"];
$_SESSION['password']= $_POST["Contrasena"];



Una vez que la sesión ha sido creada, para impedir que usuarios ajenos puedan ingresar a las páginas de la web, se pone el siguiente código al inicio de la página que muestra el contenido:

<?php
session_start();//siempre iniciar sesion antes que todo
//si las variables tienen valores entonces ingresa y mira el contenido
if(isset($_SESSION['usuario']) && isset($_SESSION['password'])){
?>



Y al final de la página se pone de la siguiente manera:

<?php
 } else {
    echo "<center><b>Error de acceso: Necesitas iniciar sesion</b></center>";
   }
?>


Y para cerrar sesión se pone el siguiente enlace para el logout:

<?php
//Enlace para cerrar la sesion
echo('<a href="logout.php">Cerrar Sesion</a><br />');
?>


La página logout.php contendrá lo siguiente:

<?php
//iniciar sesion antes que todo
session_start();

//libera la sesión actual, elimina cualquier dato de la sesión.
session_destroy();

/* liberarán las variables de sesión registradas, quitandoles el valor contenido en ellas
si no se hace esto aunque la pagina sea cerrada siempre conservaran su valor y cualquier
persona podra ingresar a la sesion*/
unset($_SESSION["usuario"]);
unset($_SESSION["password"]);

//libera la sesion
session_unset();

//dirigirse a la pagina que se desea ver
echo "<script>document.location.href='../Login.php';</script>";


//NOTA: ESTE CODIGO NO ELIMINA DATOS DE LAS COOKIES, EN CASO QUE LA PAGINA TENGA COOKIES
?>



Y ESO ES TODO, AHÍ ESTÁ EL LOGIN Y EL LOGOUT EN 5 PEQUEÑOS PASOS

Mostrar imagen en PHP con MySQL / PhpMyAdmin

Únicamente se ocupan 6 cosas:
- una carpeta llamada Fotos que contenga 4 fotos de ejemplo
- crear la base de datos
- crear una conexión a la base de datos
- Ingresar la imagen
- Guardar la dirección de la imagen en la base de datos
- y Mostrar la imagen



La base de datos a usar para este ejemplo se llama "test" y la tabla se llama foto y los campos son "id" en INT auto numérico y "direccion" en varchar 40




Mi conexión es la siguiente, no olviden modificar el nombre de usuario y el password  conexion.php:

<!-- CONEXION A LA BASE DE DATOS, TODAS LAS PAGINAS USAN ESTA CONEXION -->
<?php
$server = "localhost";//nombre del servidor en PhpMyAdmin
$usuario = "root";//nombre del usuario
$pwd = "";//contraseña del PhpMyAdmin
$db = "test";//nombre de la base de datos

//manda los datos almacenados en las variables al PhpMyAdmin
$conexion = mysql_connect($server,$usuario,$pwd,$db);

//condición que verifica si hay conexion con la base de datos
if (!$conexion)
{
die("No se pudo conectar con la base de datos.");
}
mysql_select_db($db); //selecciona la base de datos a usar
?>



Luego hay que ingresar la imagen a guardar, la página se llama ingresar.php :

<!--- CAMPOS PARA EL INGRESO DE DATOS, LOS MANDA AL add_pass.php Y ABRE DICHA PAGINA  --->
<form action="add.php" method="POST" enctype="multipart/form-data" style="padding:5px;">
Nombre de la foto: <input name="userfile" type="file" class="box" id="userfile"><br /><br />
<div style="margin-left: 70px;"><input name="guardar" value="Guardar" type="submit" /></div>
</form>




En el código que muestro en "action" pongo la página a la que voy a dirigir mi información en este caso es "add.php". Y luego en la página add.php voy a poner lo siguiente:

<?php
include 'conexion.php';//siempre que se realicen querys a la base de datos hay que poner la conexion

if(isset($_POST['guardar']))
{
$fileName = $_FILES['userfile']['name'];
$foto= "Fotos/$fileName";

$sql ="INSERT into foto (direccion) VALUES ('$foto')";
mysql_query($sql);

$query="SELECT * FROM foto WHERE id='18'";
$result =mysql_query($query);
if($row = mysql_fetch_array($result))
{
$direccion= $row['direccion'];
echo $direccion;
echo '<img src="'.$direccion.'">';
echo "<img src='$direccion'>";

?>
<img src="<?php echo $row["direccion"]; ?>" />

<?php
}
}
?>




En este caso estamos mostrando la imagen en el mismo php en el que lo guardamos, así que ahí finaliza todo el proceso. 

Iniciando con Blender

Acercar la imagen: girando la rueda en el centro del mouse. Girar la imagen: manteniendo presionada la rueda en el centro del mouse y movi...