● Demander une adresse IP full stack chez Free pour avoir tous les ports
● Réparation d'un radio réveil impossible à mettre à l'heure et qui affiche 7L7
● Réparation d'une VMC: condensateur HS
● Raspberry Pi en récepteur audio Bluetooth (A2DP audio sink)
● Twitter devient x.com et son logo n'est pas sans rappeler celui x.org
● Enfouissement de pales d'éoliennes: vrai ou faux?
L'explosion du Ship vue depuis la Floride, regarder jusqu'à la fin. ▶
Rattrapage du Booster Super Heavy réussi mais avec 2 moteurs qui ne se sont pas rallumés lors du boostback burn et 1 lors de la phase de décélération. Malheureusement le Ship a encore été perdu. Il a eu une avarie de moteurs, plusieurs se sont é[...]
Début du direct de SpaceX, décollage toujours à l'heure prévue (00 H 30 en France).
Lancement annulé !
Décollage repoussé à 00 H 45, les préparatifs sont en cours.
Quand j'ai écris ce tuto, j'ai repris le fonctionnement d'un récepteur BT qui ne demande pas d'authentification. Il doit être possible de faire un système où il faut appuyer sur un bouton pour se mettre en mode appairage comme pour une enceinte BT en utilisant le GP[...]
Salut Jesus Forainsuper tuto merci beaucoup, ça marche nickel :) Je vais essayer de renforcer un peu la sécu, je suis en appart' et laisser l'appairage BT ouvert ça me plait moyen. Encore merci pour la publication @++Pete
Bonjour! J'ai enfin réussi ! Le problème résidait dans bluez, malgré les multiples distros que j'ai testé j'avais toujours un conflit quelque part, et là après une énième réinstalle propre et de longues recherches sur toutes les l[...]
Le problème doit venir du réseau Free. Si c'était le VPN de l'entreprise ça ne fonctionnerait pas quelque soit le fournisseur. Et l'IP partagée n'empêche pas l'utilisation d'un VPN, c'est surtout utile si comme moi tu héberges un serveur web et que tu [...]
Bonjour, Merci pour ton blog et toutes ces infos. J'ai un soucis un peu tricky. Depuis quelques semaines (impossible de me rappeler quand exactement), lorsque je suis en télétravail via le VPN de mon entreprise (via ma freebox pop), j'ai des erreurs reseau (fermeture de socket) entre l[...]
Quand on utilise de l'AJAX pour son site web, on a souvent besoin de transférer plusieurs variables entre client et serveur mais le problème est qu'entre les 2, c'est une chaîne de caractères qui cicule. Comment récupérer le résultat d'une fonction et son code retour par exemple?
On peut utiliser du JSON mais le problème c'est que si les fonctions pour le traiter sont diponibles en PHP côté serveur, elles ne le sont pas en Javascript côté client, il faut alors utiliser des bibliothèques Javascript pour le traiter et je voudrais bien me passer de l'utilisation d'une bibliothèque.
L'astuce que j'ai trouvée consiste à utiliser un caractère qui servira de séparateur entre les données. Bien sur, ce caractère ne devra pas être alphanumérique, si le séparateur était la lettre A, il y aurait de fortes chances de la retrouver dans les données à transmettre et ça poserait problème pour savoir si'il s'agit du séparateur ou des données.
On utilisera donc les caractères spéciaux qu'on trouve au début de la table ASCII, ces caractères ont peu de chance de se retrouver dans les données, il faudra là aussi éviter certains caractères comme les retours chariots, si les données sont du texte sur plusieurs lignes, il y en aura forcément.
Dans notre exemple, on va utiliser le caractère ASCII N°29, 0x1D en hexa, séparateur de groupe ou GS.
On a besoin déchanger ces 3 variables:
Échange serveur --> client
Côté serveur (PHP), on concatène les données de façon à avoir une chaîne, \x1D est le code ASCII en hexa du caractère séparateur:
echo 'Texte de la page'."\x1D".$uneVariable."\x1D".$uneAutreVariable;
Côté client (Javascript), on éclate la chaîne avec split, String.fromCharCode(29) retourne le caractère ASCII à partir de son code décimal:
var donneesServeur = xhr.responseText.split(String.fromCharCode(29));
La variable serverData est un tableau:
[0] = 'Texte de la page'
[1] = contenu de $uneVariable
[2] = contenu de $uneAutreVariable
Échange client --> serveur
C'est le même principe que précédament mais à l'envers:
Côté client:
On cancatène les données avec le caractère séparateur entre.
var chainePourLeServeur = 'Texte de la page' + String.fromCharCode(29) + uneVariable+String.fromCharCode(29) + uneAutreVariable;
Côté serveur:
On utilise explode pour éclater la chaîne en tableau.
$donneesClient = explode("\x1D", $_POST['donnees']);
La variable $donneesClient est un tableau:
[0] = 'Texte de la page'
[1] = contenu de uneVariable
[2] = contenu de uneAutreVariable
On peut aussi transmettre des tableaux à plusieurs dimentions en choisisant plusieurs caractères séparateur.