<div onClick="test(parametre, event)"> function test(parametre, e) { var x=e.clientX; //nombre de pixels depuis la droite de la fenêtre var y=e.clientY; console.log ("X coords: " + x + ", Y coords: " + y); var x=e.pageX; // nombre de pixels depuis la droite de la page web var x=e.screenX; // nombre de pixels depuis la droite de l'ecran }
Category Archives: Uncategorized
VIRTUALBOX
PHP EN UTF-8
htmlentities retourne toute la chaine vide si au moins un accent en UTF-8
autres pb en UTF-8
solutions :
htmlentities($string, ENT_QUOTES, 'UTF-8'); htmlspecialchars($str, ENT_NOQUOTES, "UTF-8"); //MySQL $link = mysql_connect('localhost', 'user', 'password'); mysql_set_charset('utf8', $link); // anciennes versions mysql_query("SET NAMES 'utf8'"); // Plutôt utiliser cette solution
Fonctions chaines dans PHP ne comptent pas correctement la longueur
:
dans le php.ini mbstring.func_overload = 7
détails ici
Article complet ici
Générateur de code
CSS
enjoycss.com CSS CSS3 boutons, input, div
css3maker moins complet plus rapide
cssmatic grdient, border shadow et noise, c’est tout mais très intuitif
css3buttongenerator css pour bouton, très complet
Copie de fichiers
Copie de fichiers par le navigateur sans intermédiaire. pas de limite de taille, vitesse max.
Si les deux PC sont sur le réseau local, ne passe pas par internet -> vitesse.
Windows, Linux, MAC … c’est le navigateur qui fait le boulot, pas l’OS.
VPN Notes
MySQL importer un CSV
LOAD DATA INFILE
NODE.JS
Très bon article pour débuter
installation Debian
apt-get install nodejs
update-alternatives –install /usr/bin/node nodejs /usr/bin/nodejs 100 –> maintenant nodejs ET node utilisables
curl https://www.npmjs.com/install.sh | sh --> installation de npm pour les bibliothèques
utilisation : node monscript.js
node -v et npm -v pour controler
Access internet Guadeloupe
Comparatif de deux lignes même et unique PC, même heure, dans la journée, puis le soir.
A Numéricable « la fibre » 30 Mb qui est en fait du câble coaxial
B Orange ADSL 20 Mb
ping | Descendant | Montant | |
Guadeloupe-Guadeloupe | |||
Numéricable / SFR | 106 ms / 145 |
2.92 mb / 1.17 le soir |
0.92 mb / 0.94 |
Orange | 122 ms / 18 ms |
7.01 mb / 6.98 le soir |
0.80 mb / 0.84 |
Guadeloupe-USA | |||
Numéricable /SFR | 111 ms / 112 |
2.08 ms / 1.37 le soir |
0.91 mb / 0.90 |
Orange | 101 ms / 110 |
7,11 Mb / 6.58 le soir |
0.82 Mb / 0.86 |
Guadeloupe-Europe | |||
Numéricable / SFR | 124 Ms / 153 |
2.36 Mb / 1.20 le soir |
0.92 Mb / 0.93 |
Orange | 140 Ms / 133 |
5.98 Mb / 6.82 le soir |
0.82 Mb / 0.73 |
A la ligne est vendue pour du 30 Mb en réalité c’est du 3 mb Le débit pour joindre des sites hors Guadeloupe reste à 3Mb, contrairement à Mediaserv qui ne dispose pas d’assez de bande passante pour servir tous ces clients. Le soir par contre c’est limite utilisable, ne comptez regarder un film en streaming. Ce qui est étonnant, c’est la stabilité du ping malgré la baisse de débit. Reste utilisable en SSH mais plusen RDP
B La ligne 20M n’en fait que 8, ce qui globalement est deux à trois fois mieux que Numéricable, l’accès au reste du monde est très correct. Cette ligne est régulièrement en panne, coupure, micro-coupure… comme souvent pour L’ADSL mal entretenu en climat tropical
J’ai fait d’autres mesures comme la gigue qui est plus critique que le débit en utilisation pro. Numéricable et Orange donnent des résultats similaires tout à fait acceptables.
Numéricable ne livre pas ce qui est vendu (débit / 10, cuivre au lieu de fibre) mais le résultat reste tout à fait convainquant pour une utilisation en entreprise. Voire un poil mieux pour le ping et la gigue. Le câble coaxial utilisé (rien à voir avec la fibre optique annoncée) est moins sensible à l’humidité. Comme le réseau est plus récent, la maintenance est plus simple.
L’infrastructure Orange est nettement un cran au dessus. Malheureusement « le dernier kilomètre » est en très mauvais état. Avoir un internet performant ne sert à rien s’il est coupé régulièrement. Pour ceux dont la ligne téléphonique cuivre est en bon état, Orange est la meilleure solution. Mais le réseau vieillissant et les interventions bâclées n’arrangent rien. Une petite réorganisation du service technique Orange pourrait changer la donne.
PHPExcel
Lecture ecriture de fichiers Excel en PHP
<?php require_once($_SERVER[DOCUMENT_ROOT]."/monchemin/class/PHPExcel.php"); require_once($_SERVER[DOCUMENT_ROOT]."/monchemin/class/PHPExcel/IOFactory.php"); $modele = $_SERVER[DOCUMENT_ROOT]."/monchemin//modele/excel_modele.xls"; $excelReader = PHPExcel_IOFactory::load($modele); //charge le fichier excel $excelReader->setActiveSheetIndex(1); // sélection deuxième onglet (1) facultatif $excelReader->getActiveSheet()->SetCellValue("C2", "test"); // Mets "test" dans la cellule C2 // acces aux cellule en numérique pratique pour des boucles $excelReader->getActiveSheet()->setCellValueByColumnAndRow(1, 3, "test"); // Mets "test" dans la cellule B3 // mets une date MySQL dans la cellule C4 $bidon=faire_date($row["DATE"],$excelReader, "C4" ); // force le format texte pour afficher par exemple un code barre $excelReader->getActiveSheet()->setCellValueExplicit("F5", $row[GENCOD], PHPExcel_Cell_DataType::TYPE_STRING); // envoi le fichier excel au navigateur header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); header("Content-Disposition: attachment;filename=mon_nouveau_fichier.xls"); header("Cache-Control: max-age=0"); $objWriter = PHPExcel_IOFactory::createWriter($excelReader, "Excel5"); $objWriter->save("php://output"); // ou pour sauver dans un fichier sur le disque (sans les header) $objWriter->save("monfichier.xls"); function faire_date($dt,&$excelReader, $cel ){ $date1 = explode("-",$dt); $time1 = PHPExcel_Shared_Date::FormattedPHPToExcel($date1[0], $date1[1], $date1[2]); $excelReader->getActiveSheet()->getStyle($cel)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_DDMMYYYY); $excelReader->getActiveSheet()->SetCellValue($cel, $time1); } ?>
Microsoft excel affiche parfois des messages concernant l’intégrité ou la sécurité des fichiers produits. Préparer les modèles avec Libreoffice évite ce problème
quelques liens