Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - yoelrodguez

#1
Redes / Problema con el acceso a mi sitio
3 Diciembre 2021, 22:59 PM
Hola, tengo la siguiente situación: tengo una vps que tiene una ip ivp6 colocada. En mí dns tengo colocado el registro AAAA que a punta a la ip de mí vps. Para comenzar a usar el dominio con la vps  espere 24 horas y comprobando por la página https://ping.eu me lo resuelve sin problema con el nslookup pero si lo hago desde mí pc, ahí me dice que no encuentra el dominio y tampoco puedo acceder desde el navegador. He probado desde varias redes y de alguna si me trabaja y de otra no. Alguna idea de que puede ser.


Gracias
#2
Tengo la siguiente situación: tengo un sistema hecho con codeingter que me está cargando muy lenta la página en mi servidor online. La comparación la estoy haciendo con mí servidor local que es un xampp con mariadb de base de datos, contra mi servidor en línea que es dedicado y tienes instalado un plesk con mariadb de base de datos. La diferencia de la carga del servidor local al online es de casi 5 segundos.

Haciendo pruebas, compre que la lentitud se me produce en la consulta SQL si quito la ejecución de la consulta la página en el servidor online me carga super rápido. Tengo colocados todos los index en las tablas del servidor, en cuanto a las relaciones pero ni aun así logro que la cargar del servidor online sea igual o parecida a la del servidor local. A continuación le dejo la consulta para ver si me pueden ayudar.

Gracias.


SELECT `contrato`.`id`, `contrato`.`n_contrato`, `cliente`.`tipoc`, `cliente`.`nombremp`, `cliente`.`nombre` AS cnombre, `cliente`.`apellidos` AS capellidos, `fiador`.`nombre` AS fnombre, `fiador`.`apellidos` AS fapellidos, `promotor`.`nombrecorto` AS prnombrecorto, `promotor`.`nombre` AS prnombre, `promotor`.`apellidos` AS prapellidos, `contrato`.`f_firma`, `contrato`.`f_final`, `contrato`.`f_revicion`, `contrato`.`importe`, `contrato`.`facimporte`, `inmueble`.`nombre` AS inmuebles, `inmueble`.`direccion` AS idireccion, `inmueble`.`id` AS idinmueble, `propietario`.`nombrecorto` AS pnombrecorto, `propietario`.`nombre` AS pnombre, `propietario`.`apellidos` AS papellidos, `documentos`.`ruta_doc`, `documentos`.`iddrive`, `cliente`.`rutap_doc` AS rutac, `fiador`.`rutap_doc` AS rutaf, `propietario`.`rutap_doc` AS rutap, `promotor`.`rutap_doc` AS rutapr, `contrato`.`id_documento`, `contrato`.`id_promotor`, `contrato`.`id_cliente`, `contrato`.`id_fiador`, `contrato`.`vencido`, DATE_FORMAT(f_firma, ' %d-%m-%Y') AS ffirma, DATE_FORMAT(f_final, ' %d-%m-%Y') AS ffinal, DATEDIFF(f_final, CURDATE()) AS dia, DATEDIFF(f_revicion, CURDATE()) AS diar
FROM (`contrato` LEFT JOIN cliente ON contrato.id_cliente = cliente.id LEFT JOIN fiador ON contrato.id_fiador = fiador.id LEFT JOIN promotor ON contrato.id_promotor = promotor.id LEFT JOIN documentos ON contrato.id_documento = documentos.id LEFT JOIN inmueble ON contrato.id_inmueble = inmueble.id LEFT JOIN propietario ON inmueble.id_propietario = propietario.id)
WHERE `vencido` =  '2'
ORDER BY `n_contrato` ASC, `inmuebles` ASC, `f_final` ASC, `f_final` ASC, `importe` ASC
LIMIT 20


       
#3
Hola, tengo la siguiente situación: necesito aplicar un filtro aun consulta que llena una tabla la cual tiene un paginado.  Los datos del formulario son 7, estos se pueden seleccionar todos o solo algunos. El where lo puedo conformar sin problema y pasarlo a la consulta para que me muestre el resultado que deseo, el problema se me presenta cuando hago el paso de página, ya que el valor de la variable del where se me pierde y el formulario se resetea.

Gracias
#4
Hola, tengo la siguiente situación. Estoy haciendo una aplicación en apache cordova en la cual envío peticiones por ajax a un script php donde envío los datos con json. Hasta ese punto todo me trabaja sin problema.  El problema se me presenta con la seguridad del scriṕt ya que cuando accedo directamente desde la Url llego hasta el contenido que se imprime en el script. En todos mis script tengo colocando una condición que si el usuario no está iniciado en el sistema no se puede acceder a el pero en el caso de la petición por ajax no me funciona ya que aunque el usuario se firma en la aplicación las variables de sesión no se mantienen. Mi pregunta es la siguiente, de que forma puedo colocar que solo se acceda al script desde la aplicación y si el acceso es desde la Url sea rechazado?

Gracias
#5
Redes / El correo me llega como spam
15 Junio 2021, 20:25 PM
Hola buenas tarde, estoy presentado problema con el envío de correo desde mi servidor,  cuando envío algún correo a cualquier cuenta de gmail o hotmail me lo reporta como spam. Tengo configurada la zona en reversa de mi dns y el _dmarc en el dns y aun así me sigue pasando. En mxtoolbox.com cuando hago la verificación de las blacklist solo me reporta dos: UCEPROTECTL2 y UCEPROTECTL3, cuando busco en internet me dicen que es por el segmento de red en que estoy y lo consideran spam. Mi pregunta existe alguna forma de solucionar este problema que no sea cambiar la ip del servidor.

Gracias   
#6
Hola a todos, estoy presentando este error, cuando trato de crear el token de mi api de gloogle drive :

Error:
PHP Fatal error:  Uncaught InvalidArgumentException: missing the required redirect URI in /var/www/vhosts/abcmultimedia.mx/cuadernos.abcmultimedia.mx/lib/gdriver/vendor/google/auth/src/OAuth2.php:675
Stack trace:
#0 /var/www/vhosts/abcmultimedia.mx/cuadernos.abcmultimedia.mx/lib/gdriver/vendor/google/apiclient/src/Client.php(396): Google\Auth\OAuth2->buildFullAuthorizationUri(Array)
#1 /var/www/vhosts/abcmultimedia.mx/cuadernos.abcmultimedia.mx/lib/gdriver/uploaddriver.php(36): Google\Client->createAuthUrl()
#2 /var/www/vhosts/abcmultimedia.mx/cuadernos.abcmultimedia.mx/lib/gdriver/uploaddriver.php(60): getClient()
#3 {main}
  thrown in /var/www/vhosts/abcmultimedia.mx/cuadernos.abcmultimedia.mx/lib/gdriver/vendor/google/auth/src/OAuth2.php on line 675


Código

function getClient()
{
    $client = new Google_Client();
    $client->setApplicationName('Google Drive API PHP Quickstart');
    $client->setScopes(Google_Service_Drive::DRIVE);
    $client->setAuthConfig('credentials.json');
    $client->setAccessType('offline');
    $client->setPrompt('select_account consent');

    // Load previously authorized token from a file, if it exists.
    $tokenPath = 'token.json';
    if (file_exists($tokenPath)) {
        $accessToken = json_decode(file_get_contents($tokenPath), true);
        $client->setAccessToken($accessToken);
    }

    // If there is no previous token or it's expired.
    if ($client->isAccessTokenExpired()) {
        // Refresh the token if possible, else fetch a new one.
        if ($client->getRefreshToken()) {
            $client->fetchAccessTokenWithRefreshToken($client->getRefreshToken());
        } else {
            // Request authorization from the user.
            $authUrl = $client->createAuthUrl();
            printf("Open the following link in your browser:\n%s\n", $authUrl);
            print 'Enter verification code: ';
            $authCode = trim(fgets(STDIN));

            // Exchange authorization code for an access token.
            $accessToken = $client->fetchAccessTokenWithAuthCode($authCode);
            $client->setAccessToken($accessToken);

            // Check to see if there was an error.
            if (array_key_exists('error', $accessToken)) {
                throw new Exception(join(', ', $accessToken));
            }
        }
        // Save the token to a file.
        if (!file_exists(dirname($tokenPath))) {
            mkdir(dirname($tokenPath), 0700, true);
        }
        file_put_contents($tokenPath, json_encode($client->getAccessToken()));
    }
    return $client;
}


La ejecución del script, la estoy haciendo desde la linea de comando.

Gracias
#7
Hola, tengo la siguiente situación. Estoy subiendo múltiples archivos al servidor pero necesito que una ves que el archivo este en el servidor me muestra el nombre y así sucesivamente con los que siguen. El proceso lo esto haciendo mediante ajax y php. Los archivos me suben sin problema pero el mensaje que recibo es el del último archivo y no mientras están subiendo. Les dejo el código para ver si me pueden ayudar.

Gracias

HTML

<div id="myModalmultpl" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
   <div class="modal-header">
       <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
       <h3 id="myModalLabel">Subir doctumento</h3>
   </div>
   <div class="modal-body">
       <?php echo for_open('#', array('class' => 'form-signin''id' =>'form-polizam')); ?>
       <div id="idsubiendo"></div>
       <input type="file" name="uploadfile[]" id="uploadfile[]" multiple />
       <input type="hidden" name="tipoupload" id="tipoupload" value="1" >
       <input type="button" name="submit" id="idsubmit" value="Subir">
       <?php echo for_close(); ?>
   </div>
   <div class="modal-footer">
       <button class="btn" data-dismiss="modal" aria-hidden="true">Cerrar</button>
   </div>
</div>


javascript


$("#idsubmit").on('click', function () {

try {

//obtenemos un array con los datos del archivo
var dataString = new FormData($("#form-polizam")[0]);
$.ajax({
url: 'index.php?c=gpagar&f=setgdrive',
type: 'POST',
data: dataString,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
beforeSend: function () {
$("div#idsubiendo").html('<div class="alert alert-success"><b>Subiendo ...</b></div>');
},
//una vez finalizado correctamente
success: function (data) {
console.log(data);
bootbox.alert("<h6>El fichero ha sido subido al Google Drive: "+data.error+"</h6>");
location.reload();
},
//si ha ocurrido un error
error: function (data) {
console.log(data);
$("div#idsubiendo").html('');
bootbox.alert("A ocurrido un error por favor contacte con  el administrador");
}
});

} catch (err) {
bootbox.alert(err);
}
});


Php


foreach($datos as $val){
unset($_SESSION['idPol']);
$nombre = $val['name'];
$ext = pathinfo($nombre, PATHINFO_EXTENSION);
$aNombre = explode("-",$nombre);
$fecha = $aNombre[0]."-".$aNombre[1]."-".$aNombre[2];
//Traemos el id del movimiento.
$idmov = preg_replace('/[^0-9]+/','', $aNombre[4]);
$objMov = $gpa->get_movAutoId($idmov, $fecha);
$_SESSION['idPol'] = $objMov->id;
//Conformamos el nombre del fichro
$nameFile = $gpa->set_namefile($objMov->id_mov);

$path = "lib/gdriver/files/";
$nom = $path.$nombre;
$nom2 = $path.$nameFile.".".$ext;
rename($nom, $nom2);
//Extraemos el id de la empresa.
$obj = $emp->get_empresaNomId($aNombre[3]);
$fileid = $gpa->set_datagdrive($nameFile.".".$ext, $obj->id, $fecha);
$jdata['error'] = $fileid;
}

 
#8
Hola, estoy usando la api de html5 para la geolocalización, lo que me esta sucediendo es que cuando accedo de distinto dispositivos de una misma red las coordenadas de longitud y latitud son distintas, dándome una diferencia de casi 10 km a continuación les dejo el código para ver si me pueden ayudar.

Gracias   


navigator.geolocation.getCurrentPosition(showPosition);

function showPosition(position) {
var lat = position.coords.latitude;
var log = position.coords.longitude;
$("input#idlat").val(lat);
$("input#idlog").val(log);
}
#9
PHP / Problema con la carga de fichero csv
18 Noviembre 2020, 17:04 PM
Hola, tengo la siguiente situación. Estoy subiendo un fichero a mi servidor .csv de 15000 registro, separados por coma., El procesos de insertar los datos en la base de datos, lo estoy haciendo con insert en grupos de 100 para agilizar el proceso de la carga del fichero. Durante el proceso de conformación del mi query insert hago varias consultas a la base de datos. El problema que estoy teniendo es el siguiente: en mi servidor de desarrollo local que es un XAMPP con php 7.2 y mariadb ejecutando sobre linux mint se me demora 30 min pero en mi servidor online que es una vps con debian 10 php 7.2 y mariadb se puede demorar hasta 3 horas, provocándome errores a la hora de realizar el insert, que se traducen en valores que se muestran en cero o vacíos.

Mi pregunta es la siguiente como puedo ver la causa de la demora el el servidor ya que no me arroja ningún error ni en pantalla ni en los log.

Gracias


//Funcion para importar los pagos.
   public function set_importpaymet($files)
   {
       $idinsured = input_post('insured');
       $fecha = fecha_format(input_post('fecha'), "m-d-Y");
       $i = 1;
       $a_fecha = explode("-", input_post('fecha'));
       $mes = $a_fecha[0];
       $year = $a_fecha[2];
       $aPos = $_POST['campodata'];
       //Posision de los campos.
       $ia = ($aPos[0] != 0) ? $aPos[0] - 1 : '';
       $ic = ($aPos[1] != 0) ? $aPos[1] - 1 : '';
       $icl = ($aPos[2] != 0) ? $aPos[2] - 1 : '';
       $is = ($aPos[3] != 0) ? $aPos[3] - 1 : '';
       $ip = ($aPos[4] != 0) ? $aPos[4] - 1 : '';
       $ie = ($aPos[5] != 0) ? $aPos[5] - 1 : '';
       $imth = ($aPos[6] != 0) ? $aPos[6] - 1 : '';
       $im = ($aPos[7] != 0) ? $aPos[7] - 1 : '';
       $ir = ($aPos[8] != 0) ? $aPos[8] - 1 : '';
       $ico = ($aPos[9] != 0) ? $aPos[9] - 1 : '';
       $inr = ($aPos[10] != 0) ? $aPos[10] - 1 : '';
       $icd = ($aPos[11] != 0) ? $aPos[11] - 1 : '';

       switch ($mes) {
           case '01':
               $cmes = 'january';
               break;
           case '02':
               $cmes = 'february';
               break;
           case '03':
               $cmes = 'march';
               break;
           case '04':
               $cmes = 'april';
               break;
           case '05':
               $cmes = 'may';
               break;
           case '06':
               $cmes = 'june';
               break;
           case '07':
               $cmes = 'july';
               break;
           case '08':
               $cmes = 'august';
               break;
           case '09':
               $cmes = 'september';
               break;
           case '10':
               $cmes = 'october';
               break;
           case '11':
               $cmes = 'november';
               break;
           case '12':
               $cmes = 'dicember';
               break;
       }
       $numLineas = (count(file("storage/" . $files))) / 100;

       if (!is_int($numLineas)) {
           $numLineas = intval($numLineas) + 1;
       }
       $Resto = (count(file("storage/" . $files))) % 100;
       //Comensamos a procesar el fichero.
       $v = 1;
       $c = 1;
       $cil = 1;
       if (($gestor = fopen("storage/" . $files, "r")) !== false) {
           while (($datos = fgetcsv($gestor, 1000, ",")) == true) {
               if ($c != 1) {

                   if ($v == 100 and $cil <= $numLineas) {
                       $campos = "(npn,month,subcriberid,member,fecha,id_incured,effectivedate,procedado,class,com_paym)";
                       $valores = substr($valores, 0, -1);
                       $q = $this->db->multi_query("INSERT INTO tabla2" . $campos . " VALUES " . $valores);
                       if (!$q) {
                           echo "INSERT INTO tabla2 " . $campos . " VALUES " . $valores . "<br />";
                           printf("Error en ejecución: %s\n", $this->db->error);
                       }
                       $campos1 = "(a_number,c_name,p_state,p_number,e_date,month,pyear,n_member,rate,commission,new_ren,id_insured)";
                       $valores1 = substr($valores1, 0, -1);
                       $q1 = $this->db->multi_query("INSERT INTO tabla1" . $campos1 . " VALUES " . $valores1);
                       if (!$q1) {
                           echo "INSERT INTO tabla1 " . $campos1 . " VALUES " . $valores1 . "<br />";
                           printf("Error en ejecución: %s\n", $this->db->error);
                       }
                       $valores = '';
                       $valores1 = '';
                       $cil++;
                       $v = 0;
                   }
                   //Proceamos el nombre para el caso que venga invertido.
                   if (strpos($datos[$ic], ',')) {
                       $aName = explode(",", $datos[$ic]);
                       $clientName = $aName[1] . " " . $aName[0];
                   } else {
                       $apellido = $datos[$icl];
                       $clientName = $datos[$ic] . " " . $apellido;
                   }
                   unset($com);
                   $pos = strpos($datos[$ip], "-");
                   if ($idinsured == 1) {
                       $aSub = explode("-", $datos[$ip]);
                       $subId = $aSub[1];
                   } else {
                       $subId = trim($datos[$ip]);
                   }
                   //$subId = str_replace("FL-","",trim($datos[$ip]));
                   //Definimos el formato de la fecha
                   $fechaFile = fecha_format(str_replace("/", "-", $datos[$ie]), "m-d-Y");

                   //Insertamos los gagos para el bob list de amberer.
                   $comision = str_replace(array("$"), "", $datos[$ico]);

                   $valores1 .= "(";
                   $valores1 .= "'" . addslashes($datos[$ia]) . "',";
                   $valores1 .= "'" . addslashes($clientName) . "',";
                   $valores1 .= "'" . addslashes($datos[$is]) . "',";
                   $valores1 .= "'" . addslashes($subId) . "',";
                   $valores1 .= "'" . addslashes($fechaFile) . "',";
                   $valores1 .= "'" . $mes . "',";
                   $valores1 .= "'" . $year . "',";
                   $valores1 .= "'" . intval($datos[$im]) . "',";
                   $valores1 .= "'" . addslashes(str_replace(array("$"), "", $datos[$ir])) . "',";
                   $valores1 .= "'" . floatval($comision) . "',";
                   $valores1 .= "'" . addslashes($datos[$inr]) . "',";
                   $valores1 .= "'" . $idinsured . "'";
                   $valores1 .= "),";

                       $q = $this->db->query("SELECT id, id_agent FROM `tabla5` WHERE suscriberid = '" . $subId . "'  AND id_insured = '" . $idinsured . "' AND SUBSTRING(aplication_date, 1, 4) = '" . $year . "' AND  borrado <> 1 AND pending <> 1 ");

                   //Comprobamos a quien pertenece el pago y la comicion del agente por subcriber o nombre.
                   if ($q->num_rows == 1) {
                       $obj = $q->fetch_object();
                       //Traemos el valor de la comision que se le va pagar por agent.
                       $qac = $this->db->query("SELECT comm_new, comm_rew FROM tabla4 WHERE id_agent = '" . $obj->id_agent . "' AND id_insured = '" . $idinsured . "' AND yearcom = '" . $year . "' ");
                       if ($qac->num_rows > 0) {
                           $obj_cag = $qac->fetch_object();
                           //Calculamos la comision para insertar el valor en la tabla de pagos.
                           if ($datos[$inr] == 'OEP') {
                               $com = $obj_cag->comm_new * intval($datos[$im]);
                           } else {
                               $com = $obj_cag->comm_rew * intval($datos[$im]);
                           }
                           //Comprovamos si el usuario ya tiene pago
                           $qc = $this->db->query("SELECT ". $cmes . " FROM tabla3 WHERE id_client = '" . $obj->id . "' AND fecha = '" . $year . "'");
                           if ($qc->num_rows > 0) {

                               $obj_cmes = $qc->fetch_object();
                               $comp = $com + $obj_cmes->$cmes;
                               //Insertamos el registro procesado en la tabla registro.
                               $valores .= "(";
                               $valores .= "'" . addslashes($datos[$ia]) . "',";
                               $valores .= "'" . addslashes($datos[$imth]) . "',";
                               $valores .= "'" . $subId . "',";
                               $valores .= "'" . addslashes($datos[$im]) . "',";
                               $valores .= "'" . addslashes($fecha) . "',";
                               $valores .= "'" . $idinsured . "',";
                               $valores .= "'" . addslashes($fechaFile) . "',";
                               $valores .= "'1',";
                               $valores .= "'" . addslashes($datos[$inr]) . "',";
                               $valores .= "'" . $com . "'";
                               $valores .= "),";
                               //Insertamos los datos en la tabla de pagos al  mes que coresponde.
                               classDb::update_db(tabla3, array($cmes => $comp), array('id_agent' => $obj->id_agent, 'id_client' => $obj->id, 'fecha' => $year));
                           } else {

                               //Insertamos el registro procesado en la tabla registro.
                               $valores .= "(";
                               $valores .= "'" . addslashes($datos[$ia]) . "',";
                               $valores .= "'" . addslashes($datos[$imth]) . "',";
                               $valores .= "'" . $subId . "',";
                               $valores .= "'" . addslashes($datos[$im]) . "',";
                               $valores .= "'" . addslashes($fecha) . "',";
                               $valores .= "'" . $idinsured . "',";
                               $valores .= "'" . addslashes($fechaFile) . "',";
                               $valores .= "'0',";
                               $valores .= "'" . addslashes($datos[$inr]) . "',";
                               $valores .= "'0'";
                               $valores .= "),";
                           }
                           $qc->free();
                       } else {

                           //Insertamos el registro procesado en la tabla registro.
                           $valores .= "(";
                           $valores .= "'" . addslashes($datos[$ia]) . "',";
                           $valores .= "'" . addslashes($datos[$imth]) . "',";
                           $valores .= "'" . $subId . "',";
                           $valores .= "'" . addslashes($datos[$im]) . "',";
                           $valores .= "'" . addslashes($fecha) . "',";
                           $valores .= "'" . $idinsured . "',";
                           $valores .= "'" . addslashes($fechaFile) . "',";
                           $valores .= "'0',";
                           $valores .= "'" . addslashes($datos[$inr]) . "',";
                           $valores .= "'0'";
                           $valores .= "),";
                       }
                       $qac->free();
                   } else {

                       //Insertamos el registro procesado en la tabla registro.
                       $valores .= "(";
                       $valores .= "'" . addslashes($datos[$ia]) . "',";
                       $valores .= "'" . addslashes($datos[$imth]) . "',";
                       $valores .= "'" . $subId . "',";
                       $valores .= "'" . addslashes($datos[$im]) . "',";
                       $valores .= "'" . addslashes($fecha) . "',";
                       $valores .= "'" . $idinsured . "',";
                       $valores .= "'" . addslashes($fechaFile) . "',";
                       $valores .= "'0',";
                       $valores .= "'" . addslashes($datos[$inr]) . "',";
                       $valores .= "'0'";
                       $valores .= "),";
                   }
                   $q->free();

                   if (($v == $Resto) and ($cil == $numLineas) and ($Resto != 0)) {
                       $campos = "(npn,month,subcriberid,member,fecha,id_incured,effectivedate,procedado,class,com_paym)";
                       $valores = substr($valores, 0, -1);
                       $q = $this->db->multi_query("INSERT INTO tabla1 " . $campos . " VALUES " . $valores);

                       if (!$q) {
                           echo "INSERT INTO tabla1 " . $campos . " VALUES " . $valores . "<br />";
                           printf("Error en ejecución: %s\n", $this->db->error);
                       }

                       $campos1 = "(a_number,c_name,p_state,p_number,e_date,month,pyear,n_member,rate,commission,new_ren,id_insured)";
                       $valores1 = substr($valores1, 0, -1);

                       $q1 = $this->db->multi_query("INSERT INTO tabla2 " . $campos1 . " VALUES " . $valores1);

                       if (!$q1) {
                           echo "INSERT INTO tabla2 " . $campos1 . " VALUES " . $valores1 . "<br />";
                           printf("Error en ejecución: %s\n", $this->db->error);
                       }
                       unset($valores);
                       unset($valores1);
                       $v = 0;
                   }
               }
               $v++;
               $c++;
           }
       }
   }
#10
Tengo la siguiente situación: estoy usando dos consultas que responde a una misma relación pero la condición del Where es distinta. El resultado de estas dos consultas lo tengo que mostrar en una sola tabla, por lo que estoy ejecutando las dos consultas dentro de un while y uniendo los dos array con un array_marge().

El problema se me esta presentado cuando muestro los registro, ya que una consulta me devuelve más que la otra y solo se me muestra hasta la cantidad de registros menor y lo que necesito es que siempre se me muestren todos los registros por la consulta que más tenga. A continuación les dejo el código para ver si me pueden ayudar.

Gracias.


$query = $this->db->query("SELECT reporte_nomnia.*,
(SELECT CONCAT(`tipo_asist`.`nombre_cor`,' ',`tipo_asist`.`nombre`) FROM `tipo_asist` WHERE `tipo_asist`.`idempresa` = `reporte_nomnia`.`idempresa`  AND `tipo_asist`.`nombre_cor` = `reporte_nomnia`.`concepto`) AS codigo,
(SELECT COUNT(`asistencia`.`id`)  FROM asistencia INNER JOIN empleado ON asistencia.id_empl = empleado.id_empl INNER JOIN tipo_asist ON asistencia.id_tipoasist = tipo_asist.id WHERE `tipo_asist`.`nombre_cor` = `reporte_nomnia`.`concepto`  AND empleado.id_empl = `reporte_nomnia`.`idempleado` AND fecha_ent >= `periodo`.`fecha_inicio` AND fecha_ent <= `periodo`.`fecha_final`  GROUP bY `empleado`.`id_empl` ) As relojdias,
CONCAT(`empleado`.`nombre`,' ', `empleado`.`apellidos`) AS nomb
FROM reporte_nomnia INNER JOIN `empleado` ON `empleado`.`id_empl` = `reporte_nomnia`.`idempleado` INNER JOIN `periodo` ON `periodo`.`id` = `reporte_nomnia`.`idperiodo` WHERE 1 " . $search . $ordenby . " LIMIT " . $init . "," . $reg . "");
$query2 = $this->db->query("SELECT reporte_nomnia.dh AS dh2,reporte_nomnia.importe AS importe2
FROM reporte_nomnia INNER JOIN `empleado` ON `empleado`.`id_empl` = `reporte_nomnia`.`idempleado` INNER JOIN `periodo` ON `periodo`.`id` = `reporte_nomnia`.`idperiodo` WHERE 1 " . $search2 . $ordenby . " LIMIT " . $init . "," . $reg . "");

while ($list = $query->fetch_assoc() and $list2 = $query2->fetch_assoc()) {
$this->aplicacion[] = array_merge($list, $list2);
}
return $this->aplicacion;
#11
PHP / Fichero pdf en blanco en google chrome
4 Julio 2020, 01:38 AM
Tengo la siguiente situación, estoy generando un fichero pdf con ezpdf el fichero en mi servidor local xampp se me genera sin problema pero en mi servidor cpanel no me lo esta generando, es decir sale el fichero pdf en blanco sin contenido. En ambos casos estoy usando el mismo navegador.

Gracias.

Este es el código que estoy usando para guardar el fichero.

$pdfcode = $this->pdfl->ezOutput();
$path = "tmp/" . $nombre;

$fp = fopen($path, 'wb');
fwrite($fp, $pdfcode);
fclose($fp);
#12
Hola a todos, tengo la siguiente situación: Estoy realizando una consulta en mysql, donde necesito traer todos los datos que no tenga definido una fecha de baja y si el rango de fecha, es inferior a la fecha de baja, me muestre los datos de los que estén dado de baja.

Condición 1: para el caso de los datos, que no tenga definidos una mecha de baja, se me deben mostrar y si la tiene definida se tiene que ocultar. En esta condición el rango de fecha siempre va a hacer mayor la fecha de baja.

Ejemplo: si el rango de fecha es 2020-04-30 al 2020-05-13 y la fecha de baja fue el 2020-04-30 me tiene que mostrar todos los demás datos excepto el que tiene la fecha de baja definida.

Condición 2: para este caso, los datos que tengan definido fecha de baja y el rango de fecha sea menor a la misma, se tienen que mostrar todos los datos.

Ejemplo: si el rango de fecha es 2020-01-29 al 2020-02-12 y la fecha de baja fue el 2020-04-30 me tiene que mostrar todos los datos aunque tenga la condición de baja.

A continuación le dejo la consulta hasta donde lo tengo para ver si me pueden ayudar.

Gracias.

SELECT empleado.id_empl, `empleado`.`baja`, empleado.referencia, CONCAT(empleado.apellidos,' ',empleado.nombre) AS nombre,tipo_asist.id, tipo_asist.nombre_cor,
(SELECT COUNT(id_tipoasist) FROM asistencia WHERE asistencia.id_empl = empleado.id_empl AND asistencia.fecha_ent >= '2020-04-30' AND asistencia.fecha_ent <= '2020-05-13' AND asistencia.id_tipoasist = tipo_asist.id ) AS presente
FROM asistencia
INNER JOIN empleado ON asistencia.id_empl = empleado.id_empl
INNER JOIN tipo_asist ON asistencia.id_tipoasist = tipo_asist.id
WHERE`empleado`.`fecha_baja` > '2020-05-13'  AND empleado.id_empresa = '6' AND fecha_ent >= '2020-04-30' AND fecha_ent <= '2020-05-13' GROUP BY empleado.id_empl, tipo_asist.id ORDER BY referencia ASC
#13
Desarrollo Web / Varios radio buttons
24 Abril 2020, 05:58 AM
Hola, tengo la siguente situación: estoy usando varios radio button en una misma página pero me está sucediendo que cuando selecciono un se me borran los demas del mismo nombre. El nombre no se lo puedo cambiar porque quiero capturar el valor de todos al mismo tiempo. Aquí les dejo el código para ver si me pueden ayudar. Gracias


<H5>SPOUSE</H5>
<label class="radio inline">
<input type="radio" name="coveragedep[]" id="optionsRadios3" value="1" <?php echo ($row[0]['coverrage'] == 1)?'checked':''?> ><b>Coverage Yes </b>
</label>
<label class="radio inline">
<input type="radio" name="coveragedep[]" id="optionsRadios4" value="2" <?php echo ($row[0]['coverrage'] == 2)?'checked':''?>><b>Coverage No </b>
</label>
<label class="radio inline">
<input type="radio" name="sexodep[]" id="optionsRadios3" value="1" <?php echo ($row[0]['sexo'] == 1)?'checked':''?>><b>Sex M </b>
</label>
<label class="radio inline">
<input type="radio" name="sexodep[]" id="optionsRadios4" value="2" <?php echo ($row[0]['sexo'] == 2)?'checked':''?>><b>Sex F </b>
</label>

<H5>DEPENDE 1</H5>
<label class="radio inline">
<input type="radio" name="coveragedep[]" id="optionsRadios5" value="1" <?php echo ($row[1]['coverrage'] == 1)?'checked':''?>><b>Coverage Yes </b>
</label>
<label class="radio inline">
<input type="radio" name="coveragedep[]" id="optionsRadios6" value="2" <?php echo ($row[1]['coverrage'] == 2)?'checked':''?>><b>Coverage No </b>
</label>
<label class="radio inline">
<input type="radio" name="sexodep[]" id="optionsRadios7" value="1" <?php echo ($row[1]['sexo'] == 1)?'checked':''?>><b>Sex M </b>
</label>
<label class="radio inline">
<input type="radio" name="sexodep[]" id="optionsRadios8" value="2" <?php echo ($row[1]['sexo'] == 2)?'checked':''?>><b>Sex F </b>
</label>
#14
Hola a todos: tengo la siguiente situación, estoy haciendo una consulta con mysql para obtener todos valores por aseguradora de una mismo id separados por columnas. Para obtener los resultados por columnas, a la hora de ejecutar el Query estoy usando CASE con la siguiente condición de GROUP BY (GROUP BY agent.id,  `client`.`id_insured`)  si me da el resultado esperado en las nuevas columnas que estoy creando, mostrandome una linea por cada aseguradora que tengo pero si quito  id_insured del GROUP BY  para obtener el resultado en una sola línea por cada id las columnas (numclimol, nummenmol, numcliamb, nummenamb, numcliflo, nummenflo, numcliosc, nummenosc, numclicig, nummencig, numclibri, nummenbri) me devuelven valor null . A continuación les dejo el código para ver si me pueden ayudar.

Gracias.

Ejemplo de como me lo está mostrado

Citar
id1 | 5 | 10 |
id1 |    |       | 4 | 6

Ejemplo de como lo necesito
Citar
id1 | 5 | 10 | 4 | 6

Consulta SQL

SELECT CONCAT(agent.agent_name,' ',agent.agent_lastname) AS agent, `agent`.`npn`, SUBSTRING(`client`.`aplication_date`,1,4) AS pyear,GROUP_CONCAT(DISTINCT `client`.agent2 ORDER BY  `client`.agent2 ASC SEPARATOR ' | ') AS agent2,
CASE WHEN `client`.`id_insured` = 1 THEN COUNt(`client`.id) END AS numclimol,
CASE WHEN `client`.`id_insured` = 1 THEN SUM(`client`.`family_menber`) END AS nummenmol,
CASE WHEN `client`.`id_insured` = 2 THEN COUNt(`client`.id) END AS numcliamb,
CASE WHEN `client`.`id_insured` = 2 THEN SUM(`client`.`family_menber`) END AS nummenamb,
CASE WHEN `client`.`id_insured` = 3 THEN COUNt(`client`.id) END AS numcliflo,
CASE WHEN `client`.`id_insured` = 3 THEN SUM(`client`.`family_menber`) END AS nummenflo,
CASE WHEN `client`.`id_insured` = 9 THEN COUNt(`client`.id) END AS numcliosc,
CASE WHEN `client`.`id_insured` = 9 THEN SUM(`client`.`family_menber`) END AS nummenosc,
CASE WHEN `client`.`id_insured` = 11 THEN COUNt(`client`.id) END AS numclicig,
CASE WHEN `client`.`id_insured` = 11 THEN SUM(`client`.`family_menber`) END AS nummencig,
CASE WHEN `client`.`id_insured` = 12 THEN COUNt(`client`.id) END AS numclibri,
CASE WHEN `client`.`id_insured` = 12 THEN SUM(`client`.`family_menber`) END AS nummenbri
FROM agent INNER JOIN `client` ON `client`.id_agent = agent.id WHERE `client`.`borrado` <> 1
AND SUBSTRING(`client`.`aplication_date`,1,4) = '2020' GROUP BY agent.id,  `client`.`id_insured`   ORDER BY agent.id ASc, `client`.`id_insured` ASC

#15
Tengo la siguiente situación: estoy tratando de hacer un movimiento interno dentro de mi Google Drive con php, desde la api y me envía el siguiente error:

CitarAn error occurred: { "error": { "errors": [ { "domain": "global",
"reason": "cannotCopyFile", "message": "This file cannot be copied by
the user." } ], "code": 403, "message": "This file cannot be copied by
the user." } }
Uso otras funciones, que si me trabajan sin problema como es crear un directorio, buscar el directorio así como subir los archivos al directorio. El token y las credenciales que estoy usando es el mismo para todo. A continuación les dejo el código de la función que estoy usando para hacer la copia para ver si me pueden ayudar.

Gracias

Función

       public function renameFile($service, $fileId, $newTitle)
   {
       try {
           $file = new Google_Service_Drive_DriveFile($newTitle);

           $updatedFile = $service->files->copy($fileId, $file, array(
               'fields' => 'title'
           ));
           return $updatedFile;

       } catch (Exception $e) {
           print "An error occurred: " . $e->getMessage();
       }
   }


Array $newTitle

    $newTitle =  array(
          'title' => 'titulo del directorio',
           'parents' => array('folder parents')
);


#16
Tengo la siguiente situación me pidieron hacer un proyecto con una base de datos SQL ya creada pero me encuentro que los nombres de las tablas y los campos de las tablas están escritos con espacios y cuando trato de ejecutar mi consulta me envía un error de sintaxis. Esta base datos se encuentra funcionando con una aplicación hecha en Visual Basic y yo estoy haciendo una aplicación web con php y sql server. A continuación le dejo mi código:


Select Customer.AR Cust Password, Customer.AR Cust User Name FROM AR Customer AS Customer


Error:
Citar19:04:05 Kernel error: [FreeTDS][MSSQL Server] , Server EC2AMAZ-977S99A\APPBSC, Line 1
Incorrect syntax near 'Password'.
#17
Tengo la siguiente situación: tengo una consulta que me debe devolver 200 registro y me está devolviendo 206 por lo que el valor de la suma, que estoy haciendo me varia mucho. He hecho varias pruebas pero no logro que me que de el valor que realmente es. A continuación le dejo la consulta y las pruebas que he realizado para ver si me pueden ayudar.

SELECT DISTINCT `client`.id , COUNT(registro.id) AS nopay, SUM(registro.com_paym) AS monto
FROM registro
INNER JOIN `client` ON client.suscriberid = registro.subcriberid
WHERE client.id_agent = '61' AND registro.procedado > 0 AND SUBSTRING(registro.fecha, 1,4) = '2020' AND SUBSTRING(client.aplication_date, 1,4) = '2020' AND SUBSTRING(registro.fecha, 6,2) = '01' AND client.borrado <> 1 AND client.id_insured = '2' GROUP BY registro.procedado  ORDER BY  registro.procedado ASC


Valor que me está devolviendo:

nopay = 206 de 200
monto = 6153.00 de 6132.00

Prueba que he realizado.

Quite la condición de COUNT y SUM y cambie el GROUP BY y ORDER BY en lugar de registro.procesado por `client`.id y quite el DISTINCT si me devuelve la cantidad correcta de registro y el valor del monto es correcto pero de esta manera no puedo el numero de procesados que es por el que necesito hacer la suma y el conteo.

Gracias
#18
Tengo la siguiente situación: tengo dos tablas t1 y t2 la tabla t1 tiene 16000 y tantos registro y la tabla t2 20000 y tanto registro, en la tabla t2 tengo guardado los datos por años(2020, 2019, 2018, etc). Ambas tablas estan relacionadas entres si. Lo que nesecito obtener es que todos los registros que no están contenidos en la t2 y si están en la t1 me lo muestre para un año que determinado ejemplo para el 2020 y no se tome los otros año.

En esta consulta que tengo desarrollada me devuelve cero registros.

A continuación le dejo el código que tengo hasta ahora para ver si me pueden ayudar.

Gracias.

SELECT
    t1.suscriberid AS id,
    @var1:=t2.pyear AS año,
    (SELECT
            IF(SUM(payments_global.commission),
                    SUM(payments_global.commission),
                    0)
        FROM
            payments_global
        WHERE
            payments_global.p_number = bob_global.suscriberid
                AND payments_global.pyear = @var1
                AND payments_global.month = '01') AS ene
FROM
    bob_global t1
        LEFT JOIN
    payments_global t2 ON t1.suscriberid = t2.p_number
WHERE
    1 AND t2.pyear = '2020'
        AND t1.id_insured = '2'
GROUP BY t1.suscriberid
HAVING ene = '0'
#19
PHP / No puedo subir todos los registro de un cvs
12 Diciembre 2019, 16:47 PM
Tengo la siguiente situación, estoy subiendo a mi base de datos un fichero csv que tiene al rededor de 16 mil y pico de registro. La cantidad de registro varia de un mes a otro por lo que el resto no es un valor exacto.

Las consultas de subida de datos la estoy haciendo de 100 en 100, el problema se me presenta cuando la cantidad de registro a subir queda por debajo de 100 (ejemplo 85). Estos últimos registro no me lo sube completo siempre me deja algunos sin subir, la cantidad varia de acuerdo al resto que queda.

A continuación les dejo el código para ver si me pueden ayudar.

Gracias.

$numLineas = (count(file("storage/" . $files))) / 100;



if (!is_int($numLineas)) {

$numLineas = intval($numLineas) + 1;

}

$Resto = (count(file("storage/" . $files))) % 100;



//Comenzamos a procesar el fichero.

$v = 1;

$c = 1;

$cil = 1;



if (($gestor = fopen("storage/" . $files, "r")) !== false) {

while (($datos = fgetcsv($gestor, 1000, ",")) !== false) {

if ($c != 1) {

                                      //Insertamos los datos siempre que la variable $v llegue a 100.

if ($v == 100 and $cil <= $numLineas) {.



                                         //Insertamos los datos  y ponemos la variable $v en cero



$cil++;

$v = 0;

}



//Insertamos el resto que no corresponde a a la cantidad de 100

if ($v == $Resto and $cil == $numLineas and $Resto != 0) {



                                     //Insertamos el resto que queda.



$v = 0;

}

}

$v++;

$c++;

}

}

Valora esta pregunta

#20
Hola tengo el siguiente problema. Estoy usando javascript para ir ocultando poco a poco, las palabras de un texto pero lo que me sucede es que no se me está ocultando los segmentos en el orden que quiero, sino que me lo hace indistintamente .

Les dejo el código para ver si me pueden ayudar.

ini = 0
//Conformamos la cadena a trabajar.
for(c = 0; c < v; c++){
a_seg = '';
a_seg = a_str.splice(ini,5);
if(a_seg != ''){
for(s = 0; s < a_seg.length ; s++){
search += a_seg[s]+" ";
}
search = search.trim();
search = search.replace(/&nbsp;/g,"");
var regex = new RegExp(search,'gi');
       $(this).html($(this).text().replace(regex,'<span style="color: #ff0000; font-size: 18px;">'+search+'</span>'));
       $(this).html($(this).text().replace(regex,'<span style="font-size: 18px;"></span>'));
   search = '';
   ini = ini + 5;
}


#21
Hola a todos:
Tengo el siguiente problema, estoy utilizando dos funciones javascript pero necesito que se me ejecute de forma synchronize. La primera función, me carga un texto en un div y la segundo me lo va ocultando poco a poco por un intervalo de tiempo.

Lo que me esta sucediendo, es que primero se me esta ejecutando la función de ocultar y después la de mostrar. Les dejo el código para que vean en la forma que lo estoy ejecutando.

$("form#form1").removeClass("form-signin").addClass("form-signin2");

set_parrafo(id);

var interval = setInterval(function(){
tpal = set_hideline(60);
       },tpal);

Saludos
#22
Hola a todos:

Tengo un texto dinámico que va rotando en el cual solo necesito cambiar de color determinadas palabras. Buscado en internet encontré este método de jquery contains pero lo que me esta haciendo es cambiándome el color a todo el div y no solo a palabra que quiero. Les dejo el código por si alguien me puede ayudar.

Saludos

a2 = a[npal].split("|");
$("#text1").html(a2[0]);
setTimeout(function(){
$("#text2").html(a2[1]);
$("#text2:contains('folklore')").css("color", "red");

},1000);
   

Este es el resultado que quiero:

Nota: Lo que quiere es que se me coloquen en rojo las que están en negrita y cursivas
CitarFolklore
perezoso, mundial, sanar, bronquitis, folklore, valedero, influir, jinete, honor, folklore, lamentar.
#23
Hola a todos:

Tengo la siguiente situación, tengo un párrafo el cual estoy cargando de forma dinámica.  En el cual se me están cortando las palabras al final. Quisiera saber si existe alguna forma ,que no se me corta la palabra sino que me corte la cadena en el ultimo espacio en blanco del string.

La inserción de los texto lo estoy haciendo con jquery les dejo el código a continuación y el ejemplo de lo que esta sucediendo.

Código (javascript) [Seleccionar]
lon = Math.round(xa.length / 82);
for(i= 0; i < lon ; i++){
texto = '';
//Extraemos los contenidos para formar el párrafo dinamico.
if(i == 0){
texto = xa.substr(0,82);
$("#div"+i).addClass('txt-mitad2');
$("#texto1").html(texto);
}else{
len = 82 * i;
p = i - 1;
texto = xa.substr(len,82);
$("#div"+p).addClass('txt-mitad2');
$( '<div class="row show-grid" id="div'+i+'"  style="margin-top: 10px"><div class="span10" >'+texto+'</div></div>' ).insertAfter( "#div"+p );
}
}


Texto con el error color rojo:

CitarEs un hecho establecido hace demasiado tiempo que un lector se distraerá con el co
ntenido
del texto de un sitio mientras que mira su diseño. El punto de usar Lorem
Ipsum es que tiene una distribución más o menos normal de las letras, al contrario
de usar textos como por ejemplo Contenido aquí, contenido aquí . Estos textos hac
en
parecerlo un español que se puede leer. Muchos paquetes de autoedición y editor
es de páginas web usan el Lorem Ipsum como su texto por defecto, y al hacer una
squeda
de Lorem Ipsum va a dar por resultado muchos sitios web que usan este texto
si se encuentran en estado de desarrollo. Muchas versiones han evolucionado a tra
vés
de los años, algunas veces por accidente, otras veces a propósito (por ejemplo
insertándole humor y cosas por el estilo).
#24
Desarrollo Web / Como usar executeSql
25 Enero 2017, 23:41 PM
Hola a todos, esta es la primera vez que estoy usando las base de datos WebSql por lo que no la conozco mucho mucho el problema que tengo es el siguiente : estoy haciendo una consulta a una tabla en la cual me muestra el contenido sin problema ese dato yo lo guardado en una variable la cual quiero pasarla a una función que tengo creada. el nombre de la variable es xa y a continuación le dejo el código para ver si me puedes ayudar

saludos

Código (javascript) [Seleccionar]
//Extraemos los datos de la tabla.
sqlselect = "SELECT texto FROM textos  WHERE npregunta = '"+npreg+"'";
tx.executeSql(sqlselect,[],function (tx, result){

               if (result.rows.length){
                   for (var i = 0; i < result.rows.length; i++){
                        row = result.rows[i];
                        x += row.texto + ",";
                   }
                   //Quitmos la ultima coma
                  var xa = "["+x.substring(0, x.length-1)+"]";
               }else{
                console.log("No items");
               }
           },error);
});
function get_textrandom(xa){

var i = Math.floor((Math.random() * 6) + 1);
$("#text2").html(xa[i]);
}



#25
Desarrollo Web / Invertir rango en input range
23 Enero 2017, 19:52 PM
Hola a todos:

Tengo el siguiente detalle, tengo un input range con el cual vario el tiempo de la función setInterval de javascript.

El problema se me esta presentando, cuando  quiero variar la cantidad de palabras por minutos, ya que si lo desplazo hacia la derecha me disminuye la velocidad y si doy hacia la izquierda me la aumenta. Lo que necesito es que el comportamiento sea al revés.

Les dejo el código:

Html    


                       <div><input type="range" name="rango" class="input-whith" id="rango" min="15" max="3000"></div>
<div><input type="text" id="palabras" name="palabras" readonly="true" value=""/></div>
 

JS


$("#rango").change(function(){
var val = $(this).val();
alert(val);
pal = val / 1000;
tpal = Math.floor(60 / pal);

$("#palabras").val(tpal);

clearInterval(interval);
interval = setInterval(get_textrandom,val);
});
#26
Desarrollo Web / Estilo de texto con css
20 Enero 2017, 00:44 AM
Hola a todos:
Tengo un texto el cual quiero que solo se muestre la mitad de las letras en cada palabra. He buscado con css y no encontrado nada. Existe alguna forma de hacerlo o no es posible.

Saludos
#27
Hola a todos, tengo el siguiente problema. Quiero enviar un correo a una persona y que este en el cuerpo tenga un link, que inserte un recordatorio en el calendario de google de esa persona.  Esto lo quiero hacer dese mi  sitio web que es el que mandaria el correo.

He buscado en  Internet y lo que he encontrado es que el calendario venga a mi sitio.

Saludos.
#28
PHP / Cerrar la $_session
11 Octubre 2016, 17:49 PM
Hola todos, tengo el siguiente problema. Quiero que en el momento de cerrar el navegador se me destruya la  $_session. Sin utilizar el botón de salir. Estoy usando las variables globales de php no los cookie.

Saludos 
#29
Bases de Datos / Backup Sql server
22 Septiembre 2016, 18:31 PM
Hola a todos, tengo la siguiente duda, existe alguna forma en que yo pueda configurar la tarea de backup, del mssql server 2012 para que se salve con el nombre la fecha del día en que estamos y no con el nombre que yo definí.

Saludos
#30
Hola a todos tengo la siguiente duda, existe alguna forma de yo pasar desde mi web los recordatorios a al calendario de Google. 
He buscado en internet pero las explicaciones que veos están hechas con el frenwork y yo tengo mi sitio hecho desde cero.
Saludos
#31
Scripting / Problema con tknter
11 Mayo 2016, 21:43 PM
Hola buenas tardes a todos, estoy usando el módulo tkinter (python 3.4), para generar un messagebox  pero cuando lo ejecuto me muestra una segunda ventana en blanco. Si alguien me puede ayudar.


tkinter.messagebox.showinfo("Restaurar", "La restauración se ha realizado")


#32
Hola a todos: estoy haciendo un ejecutable con py2exe,  sin problema me lo realiza. El problema que tengo es que cuando ejecuto el .exe, me mantiene la ventana de cmd mas la interfaz gráfica. A continuación  le dejo como lo estoy ejecutando.


py -3.4 -m py2exe.build_exe -O myscript.py
#33
PHP / Problema con phpmailer
2 Abril 2016, 02:08 AM
Hola a todos: tengo el siguiente problema estoy usando la librería phpmailer, para enviar correo con formato HTML  pero me está sucediendo que cuando envió el correo, me lo está enviando como texto plano. Los datos del cuerpo del mensaje, lo estoy generando con CKeditor los cuales los guardo en una tabla y de ahí los  recuperos y los envíos. A continuación les dejo el código.

Saludos



$xmail = new PHPMailer();
$xmail->IsSMTP();

$xmail->SMTPAuth = $config["auth"];
$xmail->SMTPSecure = "ssl";
$xmail->Host = $config["host"];
$xmail->Port = $config["port"];

$xmail->Username = $config["username"];
$xmail->Password = $config["password"];

$xmail->AddAddress($to);
$xmail->AddBCC($bcc);
$xmail->SetFrom($from);

$xmail->Subject = $subject;

$xmail->Body = $html;
$mail->AltBody = "Usted esta viendo este mensaje simple debido a que su servidor de correo no admite formato HTML.";
$xmail->IsHTML(true);



#34
Redes / Como usar el Voip de mi modem
30 Marzo 2016, 17:23 PM
Hola buenos días, tengo una duda ayer me cambiaron el modem de internet.  Este nuevo modem,  cuenta con el servicio de Voip.  El cual me gustaría usarlo a través de mi pc, con un cliente de Voip eso será posible  el modem es Huawei HG658d.  En el manual que trae me explicar cómo usarlo con teléfono Voip.

Saludos
#35
Desarrollo Web / Envio de sms por la web.
23 Marzo 2016, 15:18 PM
Hola todos,  tengo la siguiente duda.  Estoy llamando al envío de SMS desde mi web,   de la siguiente manera:

  <a href="sms:+52550000000">+52550000000</a>

Existe alguna forma en que yo pueda  pasar algún texto al cuerpo del mensaje  a la hora de cargar mi  aplicación de envío de SMS .
Saludos
#36
Desarrollo Web / escaner de barrar y web
25 Febrero 2016, 16:51 PM
Hola buenos días a todos, tengo la siguiente situación. Estoy haciendo un programa para un punto de venta y quiero colocarle un escáner de barras pero lo que no se es como acoplarlo a la web el escáner y como tomar el dato de la lectura o si tengo que usar un tipo de escáner en específico.

Saludos
#37
Desarrollo Web / Problema con jquery y safari
3 Febrero 2016, 16:07 PM
Hola a todos,  tengo el siguiente problema estoy haciendo una matriz donde cargo una imagen,  que me proviene de un modal de bootstrap. El problema se me está presentado en un la Tablet de Mac que utiliza safari como navegador. Este código lo estoy ejecutando en una Tablet Android con Chrome y sin problema al igual que en una pc con Windows que tengo instalado la versión de safari para Windows y también se me ejecuta bien. Aquí les dejo el código para ver si me pueden ayudar.

Saludos

Código  jquery

//Actiavamos el modo de edición.
$(".edicion").click(function(){
cl = $(this).attr('class');
pos = cl.indexOf("span-imagenedion");
if(pos < 0){
$(this).removeClass("span-imagenedioff").addClass("span-imagenedion");
$('div.imgmosa').each(function(){
$(this).removeClass("span-imagenlim").addClass('span-imagenmas');
});
}else{
$(this).removeClass("span-imagenedion").addClass("span-imagenedioff");
$('div.imgmosa').each(function(){
$(this).removeClass("span-imagenmas").addClass('span-imagenlim');
});
}

});

//Cargasmos el modal con la lista de tipo del producto.
$("div.span-imagenmas").live('click',function(){
id = $(this).attr('id');
$("#divid").val(id);
     $.post('index.php?c=movimiento&f=tipolistmodal',function(data){
$("#tab-prod").html(data.tabla);
$("#myModal3").modal();
},'json');

});

Código HTML

  <div class="row show-grid">
  <div class="span1 imgmosa" id="div1"></div>
  <div class="span1 imgmosa" id="div2"></div>
  <div class="span1 imgmosa" id="div3"></div>
  <div class="span1 imgmosa" id="div4"></div>
  <div class="span1 imgmosa" id="div5"></div>
  <div class="span1 imgmosa" id="div6"></div>
  <div class="span1 edicion"></div>
  </div> 
#38
Desarrollo Web / Problema con evento de Jquery
24 Enero 2016, 21:12 PM
Hola a todos tengo el siguiente problema. Estoy creando una tabla desde php la cual la imprimo con un echo para cargar eso datos al html con jquery en una de sus celda (td) quiero programar un evento de clic de Jquery el cual no se me está ejecutando a continuación le dejo el código.

Saludos

PHP


$table_prod =  '<table class="table">
  <thead>';
  $table_prod .= '<tr>';
  $table_prod .= '<th>Código</th>';
  $table_prod .= '<th>Descripción</th>';
  $table_prod .= '<th>Precio/cantidad</th>';
  $table_prod .='</tr>';  
  $table_prod .='</thead>';
  $table_prod .= '<tbody>';
  if(count($datos_prod) > 0){
  foreach($datos_prod  as $value){
  $table_prod .= '<tr>';
  $table_prod .= '<td>'. $value['codigo'].'</td>';
  $table_prod .= '<td>'. $value['descripcion'].'</td>';
  $table_prod .= '<td  style="text-align: center;"><a id="prod_transf"   href="#" title="Clic para transferir"><span class="label label-success">'.$value['precio1'].'<br />'.$value['cantidad'].'</span></a></td>';
  $table_prod .='</tr>';
  }
  }else{
  $table_prod .= '<tr>';
  $table_prod .= '<td colspan="3"><span class="label label-important">No tiene datos a mostrar</span></td>';
  $table_prod .='</tr>';
}
$table_prod .='</tbody>
      </table>';
echo $table_prod;


Jquery


$('#prod_transf').click(function(){
alert("OK");
/*document.getElementById('player').play();
    playing = true;*/
});
#39
PHP / Problema con el Buffer de memoria de php.
6 Diciembre 2015, 19:05 PM
Hola  todos:

Tengo el siguiente problema. Estoy leyendo un fichero que de Excel que tiene 5 columnas y 500 registro con las clases PHPExcel. Lo que me está sucediendo es lo siguiente que cuando termino de leer el fichero y guardarlo en una base de datos se me vacían todas las variables que tengo cuando veo el uso de la memoria me aumenta de 6861680  a 12813440  lo cual no me deja hacer más ningún proceso. Existe alguna forma en que yo pueda forzar que la memoria se me vacié para hacer el siguiente proceso provee con ob_clean pero si me mantiene casi igual.

Saludos.
#40
Desarrollo Web / Problema con Datepicker
20 Noviembre 2015, 23:19 PM
Hola a todos:

Tengo el siguiente problema, estoy usando un datepicker el cual cuando tengo alguna fecha en el input no me respeta el mes que tiene la fecha sino que me aparece con la del día en curso. Este datepicker está hecho para bootstrap y tengo colocado en mi proyecto el bootstrap 2.3.2.

Saludos
#41
Bases de Datos / Importar CSV a Mysql con Phpmyadmin.
24 Septiembre 2015, 17:23 PM
Hola a todos:

Estoy importando un fichero CSV separado por comas que tengo a mysql pero tengo el siguiente problema.  Si la columna tiene alguna palabra acentuada no me inserta el valor del campo para ese registro. Tengo definido en mi Base de datos UTF-8 al igual que los campos de mi tabla.

Saludos
#42
Hola a todos,  tengo el siguiente problema.  Tengo un fichero hecho en Skechup y quiero montarlo en una página que tengo creada con html 5 css3.  Si alguien me pudiera ayudar.

Saludos
#43
Desarrollo Web / Worpress woocome exportar CSV
23 Agosto 2015, 20:42 PM
Hola a todos:
Tengo una tienda virtual en worpress con woocome y quisiera que cuando el usuario procese su pedido,  me genere un csv con ese pedido que se acaba de realizar.  Hora lo tengo hecho de forma tal que el usuario tenga que iniciar sesión para poder descargar el csv.
Saludos
#44
Hola todos,  estoy compilando un programa que cree en Python 3.4 para obtener el número de serie del disco duro de la máquina. Cuando lo ejecuto a través del script desde la consola, se me ejecuta bien y me da el resultado que necesito pero cuando ejecuto el (.exe) que me crea después de la compilación me da  el siguiente error.



Este es el código

Código (python) [Seleccionar]

#Importamos la libreria OS para el trabajo de directory.
import sys
import os
#Obtenemos el número de serie del HDD.
def get_serial_number(volume=None):

   data = os.popen('vol '+'c:', 'r').read()
   data = data.split()
   cadena = str(data[len(data)-1:])
   return cadena.replace("['", "").replace("']", "").replace("-", "")

#Creamos el fichero y directory con el # de serie.
def grabartxt(serie_numero):
   
   #Cremos el directory si no existe.
   directoryPath = 'C:/Altus'
   if not os.path.exists(directoryPath):
       os.mkdir(directoryPath)

   #Escribimos el Fechero.
   directoryFile = directoryPath+"/Altus.txt"
   if not os.path.isfile(directoryFile):
       archi=open(directoryFile,'a')
       archi.write(str(serie_numero))
       archi.close()

grabartxt(get_serial_number())
#print(get_serial_number())

#45
Desarrollo Web / Estilos CSS
24 Junio 2015, 21:34 PM
Hola a todos: tengo el siguiente problema estoy haciendo una degradación en una plantilla que estoy usando con CSS3 y bootstrap. El degradado lo estoy haciendo  de abajo hacia arriba y en  los monitores cuando lo muestro me deja una línea en blanco en la parte inferior les dejo el código del body. Si alguien me pudiera ayudar.

Saludos


      body {
        padding-top: 40px;
        padding-bottom: 40px;
      background: linear-gradient(#23afe6, #fbb9f5);
        background-repeat: no-repeat;
      }