Base de connaissances
1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Ce guide explique comment paramétrer un enregistrement DNS dynamique (Dynamic DNS, DDNS) pour un nom de domaine dont la zone DNS est gérée chez Infomaniak.
Cette alternative gratuite à Dyn et DynHost est très utile si vous souhaitez accéder depuis l'extérieur à des appareils connectés à Internet dont l'adresse IP est dynamique (par exemple un NAS, une caméra de surveillance, un routeur/box Internet/domotique, etc.).
Prérequis
- La zone DNS du nom de domaine doit être gérée chez Infomaniak. Si nécessaire, transférez vos domaines chez Infomaniak.
- Votre appareil ou application doit supporter les enregistrements DNS dynamiques.
Guides spécifiques
La configuration du DNS dynamique varie d'un appareil à l'autre. Les guides suivants sont proposés à titre indicatif et permettent de lier un nom de domaine avec:
- … un NAS Synology
- … un NAS Qnap
- … Zyxel / Sunrise Internet Box / solutions TP-Link
- … un appareil UniFI
- … Swisscom Internet Box
- … Fritzbox
- … Jeedom
- … Linux via ddclient
- … potentiellement tout grâce à l'API…
Guides pour tout autre appareil
Pour créer un DNS dynamique sur votre domaine:
- Cliquez ici afin d'accéder à la gestion de votre produit sur le Manager Infomaniak (besoin d'aide ?).
- Cliquez directement sur le nom attribué au produit concerné.
- Cliquez sur Dynamic DNS dans le menu latéral gauche.
- Cliquez sur le bouton bleu Ajouter un Dynamic DNS.
- Entrez les informations nécessaires:

- Choisissez le sous-domaine souhaité ou laisser le champ Nom du Dynamic DNS vide pour utiliser le domaine principal.
- Renseignez une adresse IP ; celle-ci sera ensuite dynamiquement mise Ă jour par votre appareil / app.
- Définissez un couple identifiant / mot de passe (majuscules, minuscules + chiffres, sans symbole particulier) ; ce dernier devra être renseigné dans la configuration de votre appareil / app.
Ce guide explique comment accéder via un nom de domaine à une Sunrise Internet Box connectée à Internet avec une IP dynamique.
Prérequis
- Posséder une Box qui permet de configurer un fournisseur de DNS dynamique personnalisé.
- Un DNS dynamique doit avoir été créé sur le domaine concerné.
Lier une Sunrise Internet Box Ă un nom de domaine
Il existe différents modèles de Sunrise Internet Box. Voici un exemple:
- Connectez-vous Ă l'interface d'administration de la Sunrise Box (
http://192.168.1.1par exemple). - Activez le mode expert (bouton en haut Ă droite).
- Allez sur DynDNS (en haut Ă gauche):

- Cliquez sur l'onglet DynDNS.
- Activez le client Dynamic DNS.
- Choisissez le fournisseur “Personnalisé”:

- Remplissez les champs suivants :
- Nom d'utilisateur = l'identifiant défini dans le Manager lors de l'ajout du Dynamic DNS
- Mot de passe = le mot de passe défini dans le Manager lors de l'ajout du Dynamic DNS
- Nom d'hôte = l'URL configurée dans le Manager lors de l'ajout du Dynamic DNS
- En dessous, remplissez les champs suivants :

- Serveur :
infomaniak.com - Port :
443 - RequĂŞte (Ă copier-coller tel quel) :
https://infomaniak.com/nic/update?hostname=[DOMAIN]&myip=[IP]&username=[USERNAME]&password=[PASSWORD] - Intervalle de mise Ă jour (secondes) :
300 - Intervalle pour réessayer (secondes) :
30 - Tentatives max. :
3
- Serveur :
L'interface peut être présentée sous cette forme mais le principe reste le même:
Autres routeurs
C'est le mĂŞme principe pour une solution Omada SDN de TP-Link ; l'Update-URL est https://infomaniak.com/nic/update?hostname=[DOMAIN]&myip=[IP]&username=[USERNAME]&password=[PASSWORD] :
Et pour d'autres modèles (type Zyxel USG Flex ou ax7501-B1 par exemple) remplissez les champs en vous aidant des données ci-dessous :
- Enable DDNS Profile : activer
- DDNS Type :
User custom - HTTPS : activer
- Nom d'utilisateur : l'identifiant défini dans le Manager Infomaniak lors de l'ajout du Dynamic DNS (aide)
- Mot de passe : le mot de passe défini dans le Manager Infomaniak lors de l'ajout du Dynamic DNS (aide)
- Domain Name : nom d'hĂ´te avec le domaine
- Primary Binding Address > Interface : any
- Backup Binding Address > Interface : none
- DYNDNS Server : infomaniak.com
- URL (Ă copier-coller tel quel) : /nic/update?password=password(point 5 ci-dessus)&username=username(point 4 ci-dessus)&hostname=DomainName
- exemple
/nic/update?password=abcd1234&username=admin&hostname=abc.domain.xyz
- exemple
Simplifiez-vous la vie ! En cas de besoin, des partenaires locaux et référencés par Infomaniak peuvent s'occuper de ces démarches. Lancez un appel d'offres gratuit. Ils s'occupent de tout, vous libérant des détails techniques.
Ce guide explique comment résoudre un problème d’importation d’un fichier .csv dans une table MySQL. L’alternative proposée consiste à lire le fichier CSV ligne par ligne avec PHP et à insérer les données dans la base de données MySQL.
Fonction "LOAD DATA LOCAL INFILE" désactivée
La fonction LOAD DATA LOCAL INFILE permet d’importer un fichier CSV directement dans une table MySQL. Cependant, cette fonctionnalité est souvent exploitée par des attaquants pour obtenir un accès non autorisé à des sites hébergés sur des serveurs qui l’acceptent.
Afin de prévenir tout risque de sécurité et de protéger les données des clients, Infomaniak a désactivé la fonction LOAD DATA LOCAL INFILE. Les utilisateurs qui importent leurs fichiers CSV via phpMyAdmin (sans cocher l’option “CSV via LOAD DATA”) ne sont pas concernés.
Voici une méthode alternative pour importer des données au format CSV dans une table MySQL. L’exemple ci-dessous montre comment gérer correctement les erreurs lors de l’ouverture du fichier CSV et de l’insertion des données dans la base de données.
Ce script utilise mysqli pour se connecter à la base et des requêtes préparées pour insérer les données. Cela garantit une meilleure sécurité, une compatibilité optimale avec les versions récentes de PHP et une intégration simple dans votre projet, que ce soit dans un script existant ou un nouveau fichier situé dans le répertoire /web :
$fileName = "data.csv";
// Connect to MySQL database using mysqli
$link = new mysqli("localhost", "username", "password", "database");
// Check database connection
if ($link->connect_error) {
die("Connection failed: " . $link->connect_error);
}
// Open the CSV file for reading
if (($handle = fopen($fileName, "r")) !== FALSE) {
// Read each line of the CSV file
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
// Prepare the SQL query dynamically
$query = "INSERT INTO `test` VALUES (" . str_repeat('?,', count($data) - 1) . "?)";
$stmt = $link->prepare($query);
// Check if query preparation was successful
if ($stmt === FALSE) {
die("Query preparation failed: " . $link->error);
}
// Bind parameters (assuming all columns are strings)
$types = str_repeat('s', count($data));
$stmt->bind_param($types, ...$data);
// Execute the query
if (!$stmt->execute()) {
die("Query execution failed: " . $stmt->error);
}
// Close the statement
$stmt->close();
}
// Close the CSV file
fclose($handle);
} else {
echo "Error: unable to open the file.\n";
exit(1);
}
// Close the database connection
$link->close();
?>Obtenir de l’aide
Il est malheureusement impossible d’indiquer précisément à quel endroit du script ces lignes de code doivent être insérées.
Si cette méthode pose problème (par exemple en cas d’import simultané de plusieurs fichiers CSV sans message d’erreur), il est possible que la structure des tables ou l’indexation des champs soit en cause. Dans ce cas, contactez votre webmaster pour vérification.
Consultez également la documentation officielle PHP relative à la fonction fgetcsv().
Simplifiez-vous la vie ! En cas de besoin, des partenaires locaux et certifiés par Infomaniak peuvent prendre en charge ces démarches. Lancez un appel d’offres gratuit — ils s’occupent de tout, vous libérant des aspects techniques.